3456 lines
62 KiB
GraphQL
3456 lines
62 KiB
GraphQL
type Account implements LegacyIDInterface & Node {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
id: ID!
|
|
name: String
|
|
proficiencyRatingsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): ProficiencyRatingConnection
|
|
}
|
|
|
|
"""
|
|
A list of students that an `AssignmentOverride` applies to
|
|
"""
|
|
type AdhocStudents {
|
|
students: [User!]
|
|
}
|
|
|
|
"""
|
|
The type of assessment
|
|
"""
|
|
enum AssessmentType {
|
|
grading
|
|
peer_review
|
|
provisional_grade
|
|
}
|
|
|
|
type Assignment implements LegacyIDInterface & ModuleItemInterface & Node & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
allowGoogleDocsSubmission: Boolean
|
|
|
|
"""
|
|
The number of submission attempts a student can make for this assignment. null implies unlimited.
|
|
"""
|
|
allowedAttempts: Int
|
|
|
|
"""
|
|
permitted uploaded file extensions (e.g. ['doc', 'xls', 'txt'])
|
|
"""
|
|
allowedExtensions: [String!]
|
|
anonymizeStudents: Boolean
|
|
anonymousGrading: Boolean
|
|
anonymousInstructorAnnotations: Boolean
|
|
assignmentGroup: AssignmentGroup
|
|
assignmentOverrides(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): AssignmentOverrideConnection
|
|
canDuplicate: Boolean
|
|
canUnpublish: Boolean
|
|
course: Course
|
|
createdAt: DateTime
|
|
description: String
|
|
discussion: Discussion
|
|
|
|
"""
|
|
when this assignment is due
|
|
"""
|
|
dueAt(
|
|
"""
|
|
When true, return the overridden dates.
|
|
|
|
Not all roles have permission to view un-overridden dates (in which
|
|
case the overridden dates will be returned)
|
|
"""
|
|
applyOverrides: Boolean = true
|
|
): DateTime
|
|
dueDateRequired: Boolean
|
|
expectsExternalSubmission: Boolean
|
|
expectsSubmission: Boolean
|
|
|
|
"""
|
|
If this is a group assignment, boolean flag indicating whether or not students will be graded individually.
|
|
"""
|
|
gradeGroupStudentsIndividually: Boolean
|
|
gradingType: GradingType
|
|
groupSet: GroupSet
|
|
|
|
"""
|
|
returns submissions grouped to one submission object per group
|
|
"""
|
|
groupSubmissionsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
filter: SubmissionSearchFilterInput
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
orderBy: [SubmissionSearchOrder!]
|
|
): SubmissionConnection
|
|
|
|
"""
|
|
If true, the assignment has been submitted to by at least one student
|
|
"""
|
|
hasSubmittedSubmissions: Boolean
|
|
htmlUrl: URL
|
|
id: ID!
|
|
inClosedGradingPeriod: Boolean
|
|
|
|
"""
|
|
the lock date (assignment is locked after this date)
|
|
"""
|
|
lockAt(
|
|
"""
|
|
When true, return the overridden dates.
|
|
|
|
Not all roles have permission to view un-overridden dates (in which
|
|
case the overridden dates will be returned)
|
|
"""
|
|
applyOverrides: Boolean = true
|
|
): DateTime
|
|
lockInfo: LockInfo
|
|
moderatedGrading: ModeratedGrading
|
|
modules: [Module!]
|
|
muted: Boolean!
|
|
name: String
|
|
needsGradingCount: Int
|
|
nonDigitalSubmission: Boolean
|
|
|
|
"""
|
|
If true, the assignment will be omitted from the student's final grade
|
|
"""
|
|
omitFromFinalGrade: Boolean
|
|
|
|
"""
|
|
specifies that this assignment is only assigned to students for whom an
|
|
`AssignmentOverride` applies.
|
|
"""
|
|
onlyVisibleToOverrides: Boolean!
|
|
peerReviews: PeerReviews
|
|
|
|
"""
|
|
the assignment is out of this many points
|
|
"""
|
|
pointsPossible: Float
|
|
|
|
"""
|
|
determines the order this assignment is displayed in in its assignment group
|
|
"""
|
|
position: Int
|
|
postPolicy: PostPolicy
|
|
|
|
"""
|
|
present if Sync Grades to SIS feature is enabled
|
|
"""
|
|
postToSis: Boolean
|
|
quiz: Quiz
|
|
rubric: Rubric
|
|
state: AssignmentState!
|
|
submissionTypes: [SubmissionType!]
|
|
|
|
"""
|
|
submissions for this assignment
|
|
"""
|
|
submissionsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
filter: SubmissionSearchFilterInput
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
orderBy: [SubmissionSearchOrder!]
|
|
): SubmissionConnection
|
|
submissionsDownloads: Int
|
|
timeZoneEdited: String
|
|
|
|
"""
|
|
the unlock date (assignment is unlocked after this date)
|
|
"""
|
|
unlockAt(
|
|
"""
|
|
When true, return the overridden dates.
|
|
|
|
Not all roles have permission to view un-overridden dates (in which
|
|
case the overridden dates will be returned)
|
|
"""
|
|
applyOverrides: Boolean = true
|
|
): DateTime
|
|
updatedAt: DateTime
|
|
}
|
|
|
|
"""
|
|
The connection type for Assignment.
|
|
"""
|
|
type AssignmentConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [AssignmentEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [Assignment]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type AssignmentEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: Assignment
|
|
}
|
|
|
|
input AssignmentFilter {
|
|
"""
|
|
only return assignments for the given grading period. Defaults to
|
|
the current grading period. Pass `null` to return all assignments
|
|
(irrespective of the assignment's grading period)
|
|
"""
|
|
gradingPeriodId: ID
|
|
}
|
|
|
|
type AssignmentGroup implements AssignmentsConnectionInterface & LegacyIDInterface & Node & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
|
|
"""
|
|
returns a list of assignments.
|
|
|
|
**NOTE**: for courses with grading periods, this will only return grading
|
|
periods in the current course; see `AssignmentFilter` for more info.
|
|
In courses with grading periods that don't have students, it is necessary
|
|
to *not* filter by grading period to list assignments.
|
|
"""
|
|
assignmentsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
filter: AssignmentFilter
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): AssignmentConnection
|
|
createdAt: DateTime
|
|
|
|
"""
|
|
grades for this assignment group
|
|
"""
|
|
gradesConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): GradesConnection
|
|
groupWeight: Float
|
|
id: ID!
|
|
name: String
|
|
position: Int
|
|
rules: AssignmentGroupRules
|
|
state: AssignmentGroupState!
|
|
updatedAt: DateTime
|
|
}
|
|
|
|
"""
|
|
The connection type for AssignmentGroup.
|
|
"""
|
|
type AssignmentGroupConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [AssignmentGroupEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [AssignmentGroup]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type AssignmentGroupEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: AssignmentGroup
|
|
}
|
|
|
|
type AssignmentGroupRules {
|
|
"""
|
|
The highest N assignments are not included in grade calculations
|
|
"""
|
|
dropHighest: Int
|
|
|
|
"""
|
|
The lowest N assignments are not included in grade calculations
|
|
"""
|
|
dropLowest: Int
|
|
neverDrop: [Assignment!]
|
|
}
|
|
|
|
"""
|
|
States that Assignment Group can be in
|
|
"""
|
|
enum AssignmentGroupState {
|
|
available
|
|
deleted
|
|
}
|
|
|
|
input AssignmentModeratedGradingUpdate {
|
|
enabled: Boolean
|
|
finalGraderId: ID
|
|
graderCommentsVisibleToGraders: Boolean
|
|
graderCount: Int
|
|
graderNamesVisibleToFinalGrader: Boolean
|
|
gradersAnonymousToGraders: Boolean
|
|
}
|
|
|
|
type AssignmentOverride implements LegacyIDInterface & Node & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
allDay: Boolean
|
|
assignment: Assignment
|
|
createdAt: DateTime
|
|
dueAt: DateTime
|
|
|
|
"""
|
|
ID of the object.
|
|
"""
|
|
id: ID!
|
|
lockAt: DateTime
|
|
|
|
"""
|
|
This object specifies what students this override applies to
|
|
"""
|
|
set: AssignmentOverrideSet
|
|
title: String
|
|
unlockAt: DateTime
|
|
updatedAt: DateTime
|
|
}
|
|
|
|
"""
|
|
The connection type for AssignmentOverride.
|
|
"""
|
|
type AssignmentOverrideConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [AssignmentOverrideEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [AssignmentOverride]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
input AssignmentOverrideCreateOrUpdate {
|
|
dueAt: DateTime
|
|
groupId: ID
|
|
id: ID
|
|
lockAt: DateTime
|
|
sectionId: ID
|
|
studentIds: [ID!]
|
|
unlockAt: DateTime
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type AssignmentOverrideEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: AssignmentOverride
|
|
}
|
|
|
|
"""
|
|
Objects that can be assigned overridden dates
|
|
"""
|
|
union AssignmentOverrideSet = AdhocStudents | Group | Section
|
|
|
|
input AssignmentPeerReviewsUpdate {
|
|
anonymousReviews: Boolean
|
|
automaticReviews: Boolean
|
|
count: Int
|
|
dueAt: DateTime
|
|
enabled: Boolean
|
|
intraReviews: Boolean
|
|
}
|
|
|
|
"""
|
|
States that an Assignment can be in
|
|
"""
|
|
enum AssignmentState {
|
|
deleted
|
|
published
|
|
unpublished
|
|
}
|
|
|
|
interface AssignmentsConnectionInterface {
|
|
"""
|
|
returns a list of assignments.
|
|
|
|
**NOTE**: for courses with grading periods, this will only return grading
|
|
periods in the current course; see `AssignmentFilter` for more info.
|
|
In courses with grading periods that don't have students, it is necessary
|
|
to *not* filter by grading period to list assignments.
|
|
"""
|
|
assignmentsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
filter: AssignmentFilter
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): AssignmentConnection
|
|
}
|
|
|
|
type AuditLogs {
|
|
"""
|
|
A list of all recent graphql mutations run on the specified object
|
|
"""
|
|
mutationLogs(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
assetString: String!
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
endTime: DateTime
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
startTime: DateTime
|
|
): MutationLogConnection
|
|
}
|
|
|
|
"""
|
|
Determines if/how a leader is chosen for each group
|
|
"""
|
|
enum AutoLeaderPolicy {
|
|
"""
|
|
the first student assigned to the group is the leader
|
|
"""
|
|
first
|
|
|
|
"""
|
|
a leader is chosen at random
|
|
"""
|
|
random
|
|
}
|
|
|
|
type Course implements AssignmentsConnectionInterface & LegacyIDInterface & Node & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
account: Account
|
|
assignmentGroupsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): AssignmentGroupConnection
|
|
|
|
"""
|
|
PostPolicies for assignments within a course
|
|
"""
|
|
assignmentPostPolicies(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): PostPolicyConnection
|
|
|
|
"""
|
|
returns a list of assignments.
|
|
|
|
**NOTE**: for courses with grading periods, this will only return grading
|
|
periods in the current course; see `AssignmentFilter` for more info.
|
|
In courses with grading periods that don't have students, it is necessary
|
|
to *not* filter by grading period to list assignments.
|
|
"""
|
|
assignmentsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
filter: AssignmentFilter
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): AssignmentConnection
|
|
|
|
"""
|
|
course short name
|
|
"""
|
|
courseCode: String
|
|
createdAt: DateTime
|
|
externalToolsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
filter: ExternalToolFilterInput = {}
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): ExternalToolConnection
|
|
gradingPeriodsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): GradingPeriodConnection
|
|
|
|
"""
|
|
Project group sets for this course.
|
|
"""
|
|
groupSetsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): GroupSetConnection
|
|
groupsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): GroupConnection
|
|
id: ID!
|
|
|
|
"""
|
|
Returns a URL for the course image (this is the image used on dashboard
|
|
course cards)
|
|
"""
|
|
imageUrl: URL
|
|
modulesConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): ModuleConnection
|
|
name: String!
|
|
|
|
"""
|
|
returns permission information for the current user in this course
|
|
"""
|
|
permissions: CoursePermissions
|
|
|
|
"""
|
|
A course-specific post policy
|
|
"""
|
|
postPolicy: PostPolicy
|
|
sectionsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): SectionConnection
|
|
state: CourseWorkflowState!
|
|
|
|
"""
|
|
all the submissions for assignments in this course
|
|
"""
|
|
submissionsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
filter: SubmissionFilterInput
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
orderBy: [SubmissionOrderCriteria!]
|
|
|
|
"""
|
|
Only return submissions for the given students.
|
|
"""
|
|
studentIds: [ID!]
|
|
): SubmissionConnection
|
|
term: Term
|
|
updatedAt: DateTime
|
|
usersConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
filter: CourseUsersFilter
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
|
|
"""
|
|
Only include users with the given ids.
|
|
|
|
**This field is deprecated, use `filter: {userIds}` instead.**
|
|
"""
|
|
userIds: [ID!]
|
|
): UserConnection
|
|
}
|
|
|
|
"""
|
|
The connection type for Course.
|
|
"""
|
|
type CourseConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [CourseEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [Course]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type CourseEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: Course
|
|
}
|
|
|
|
"""
|
|
Users in a course can be returned based on these enrollment states
|
|
"""
|
|
enum CourseFilterableEnrollmentState {
|
|
active
|
|
completed
|
|
creation_pending
|
|
inactive
|
|
invited
|
|
rejected
|
|
}
|
|
|
|
type CoursePermissions {
|
|
becomeUser: Boolean
|
|
manageGrades: Boolean
|
|
sendMessages: Boolean
|
|
viewAllGrades: Boolean
|
|
viewAnalytics: Boolean
|
|
}
|
|
|
|
input CourseUsersFilter {
|
|
"""
|
|
only return users with the given enrollment state. defaults
|
|
to `invited`, `creation_pending`, `active`
|
|
"""
|
|
enrollmentStates: [CourseFilterableEnrollmentState!]
|
|
|
|
"""
|
|
only include users with the given ids
|
|
"""
|
|
userIds: [ID!]
|
|
}
|
|
|
|
"""
|
|
States that Courses can be in
|
|
"""
|
|
enum CourseWorkflowState {
|
|
available
|
|
claimed
|
|
completed
|
|
created
|
|
deleted
|
|
}
|
|
|
|
"""
|
|
Autogenerated input type of CreateAssignment
|
|
"""
|
|
input CreateAssignmentInput {
|
|
allowedAttempts: Int
|
|
allowedExtensions: [String!]
|
|
|
|
"""
|
|
requires anonymous_marking course feature to be set to true
|
|
"""
|
|
anonymousGrading: Boolean
|
|
anonymousInstructorAnnotations: Boolean
|
|
assignmentGroupId: ID
|
|
assignmentOverrides: [AssignmentOverrideCreateOrUpdate!]
|
|
courseId: ID!
|
|
description: String
|
|
dueAt: DateTime
|
|
gradeGroupStudentsIndividually: Boolean
|
|
gradingType: GradingType
|
|
groupSetId: ID
|
|
lockAt: DateTime
|
|
moderatedGrading: AssignmentModeratedGradingUpdate
|
|
moduleIds: [ID!]
|
|
muted: Boolean
|
|
name: String!
|
|
omitFromFinalGrade: Boolean
|
|
onlyVisibleToOverrides: Boolean
|
|
peerReviews: AssignmentPeerReviewsUpdate
|
|
pointsPossible: Float
|
|
position: Int
|
|
postToSis: Boolean
|
|
state: AssignmentState
|
|
submissionTypes: [SubmissionType!]
|
|
unlockAt: DateTime
|
|
}
|
|
|
|
"""
|
|
Autogenerated return type of CreateAssignment
|
|
"""
|
|
type CreateAssignmentPayload {
|
|
assignment: Assignment
|
|
errors: [ValidationError!]
|
|
}
|
|
|
|
"""
|
|
Autogenerated input type of CreateGroupInSet
|
|
"""
|
|
input CreateGroupInSetInput {
|
|
groupSetId: ID!
|
|
name: String!
|
|
}
|
|
|
|
"""
|
|
Autogenerated return type of CreateGroupInSet
|
|
"""
|
|
type CreateGroupInSetPayload {
|
|
errors: [ValidationError!]
|
|
group: Group
|
|
}
|
|
|
|
"""
|
|
Autogenerated input type of CreateModule
|
|
"""
|
|
input CreateModuleInput {
|
|
courseId: ID!
|
|
name: String!
|
|
}
|
|
|
|
"""
|
|
Autogenerated return type of CreateModule
|
|
"""
|
|
type CreateModulePayload {
|
|
errors: [ValidationError!]
|
|
module: Module
|
|
}
|
|
|
|
"""
|
|
Autogenerated input type of CreateSubmissionComment
|
|
"""
|
|
input CreateSubmissionCommentInput {
|
|
attempt: Int
|
|
comment: String!
|
|
fileIds: [ID!]
|
|
mediaObjectId: ID
|
|
submissionId: ID!
|
|
}
|
|
|
|
"""
|
|
Autogenerated return type of CreateSubmissionComment
|
|
"""
|
|
type CreateSubmissionCommentPayload {
|
|
errors: [ValidationError!]
|
|
submissionComment: SubmissionComment
|
|
}
|
|
|
|
"""
|
|
Autogenerated input type of CreateSubmissionDraft
|
|
"""
|
|
input CreateSubmissionDraftInput {
|
|
activeSubmissionType: DraftableSubmissionType!
|
|
attempt: Int
|
|
body: String
|
|
fileIds: [ID!]
|
|
mediaId: ID
|
|
submissionId: ID!
|
|
url: String
|
|
}
|
|
|
|
"""
|
|
Autogenerated return type of CreateSubmissionDraft
|
|
"""
|
|
type CreateSubmissionDraftPayload {
|
|
errors: [ValidationError!]
|
|
submissionDraft: SubmissionDraft
|
|
}
|
|
|
|
"""
|
|
Autogenerated input type of CreateSubmission
|
|
"""
|
|
input CreateSubmissionInput {
|
|
assignmentId: ID!
|
|
body: String
|
|
fileIds: [ID!]
|
|
mediaId: ID
|
|
submissionType: OnlineSubmissionType!
|
|
url: String
|
|
}
|
|
|
|
"""
|
|
Autogenerated return type of CreateSubmission
|
|
"""
|
|
type CreateSubmissionPayload {
|
|
errors: [ValidationError!]
|
|
submission: Submission
|
|
}
|
|
|
|
"""
|
|
an ISO8601 formatted time string
|
|
"""
|
|
scalar DateTime
|
|
|
|
type Discussion implements LegacyIDInterface & ModuleItemInterface & Node & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
createdAt: DateTime
|
|
id: ID!
|
|
modules: [Module!]
|
|
updatedAt: DateTime
|
|
}
|
|
|
|
"""
|
|
Types of submissions that can have a submission draft
|
|
"""
|
|
enum DraftableSubmissionType {
|
|
media_recording
|
|
online_text_entry
|
|
online_upload
|
|
online_url
|
|
}
|
|
|
|
type Enrollment implements LegacyIDInterface & Node & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
course: Course
|
|
createdAt: DateTime
|
|
grades(
|
|
"""
|
|
The grading period to return grades for. If not specified, will use the
|
|
current grading period (or the course grade for courses that don't use
|
|
grading periods)
|
|
"""
|
|
gradingPeriodId: ID
|
|
): Grades
|
|
id: ID!
|
|
lastActivityAt: DateTime
|
|
section: Section
|
|
state: EnrollmentWorkflowState!
|
|
type: EnrollmentType!
|
|
updatedAt: DateTime
|
|
user: User
|
|
}
|
|
|
|
enum EnrollmentType {
|
|
DesignerEnrollment
|
|
ObserverEnrollment
|
|
StudentEnrollment
|
|
StudentViewEnrollment
|
|
TaEnrollment
|
|
TeacherEnrollment
|
|
}
|
|
|
|
enum EnrollmentWorkflowState {
|
|
active
|
|
completed
|
|
creation_pending
|
|
deleted
|
|
inactive
|
|
invited
|
|
rejected
|
|
}
|
|
|
|
type ExternalTool implements LegacyIDInterface & ModuleItemInterface & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
createdAt: DateTime
|
|
description: String
|
|
modules: [Module!]
|
|
name: String
|
|
settings: ExternalToolSettings
|
|
state: ExternalToolState
|
|
updatedAt: DateTime
|
|
url: URL
|
|
}
|
|
|
|
"""
|
|
The connection type for ExternalTool.
|
|
"""
|
|
type ExternalToolConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [ExternalToolEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [ExternalTool]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type ExternalToolEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: ExternalTool
|
|
}
|
|
|
|
input ExternalToolFilterInput {
|
|
placement: ExternalToolPlacement = null
|
|
state: ExternalToolState = null
|
|
}
|
|
|
|
"""
|
|
Placements that an External Tool can have
|
|
"""
|
|
enum ExternalToolPlacement {
|
|
homework_submission
|
|
}
|
|
|
|
type ExternalToolPlacements {
|
|
canvasIconClass: String
|
|
iconUrl: URL
|
|
messageType: String
|
|
text: String
|
|
url: URL
|
|
}
|
|
|
|
type ExternalToolSettings {
|
|
homeworkSubmission: ExternalToolPlacements
|
|
iconUrl: URL
|
|
selectionHeight: Int
|
|
selectionWidth: Int
|
|
text: String
|
|
}
|
|
|
|
"""
|
|
States that an External Tool can be in
|
|
"""
|
|
enum ExternalToolState {
|
|
anonymous
|
|
email_only
|
|
name_only
|
|
public
|
|
}
|
|
|
|
type ExternalUrl implements LegacyIDInterface & ModuleItemInterface & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
createdAt: DateTime
|
|
modules: [Module!]
|
|
title: String
|
|
updatedAt: DateTime
|
|
url: String
|
|
}
|
|
|
|
type File implements LegacyIDInterface & ModuleItemInterface & Node & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
contentType: String
|
|
createdAt: DateTime
|
|
displayName: String
|
|
id: ID!
|
|
mimeClass: String
|
|
modules: [Module!]
|
|
submissionPreviewUrl(submissionId: ID!): URL
|
|
thumbnailUrl: URL
|
|
updatedAt: DateTime
|
|
url: URL
|
|
}
|
|
|
|
enum GradeState {
|
|
active
|
|
deleted
|
|
}
|
|
|
|
"""
|
|
Contains grade information for a course or grading period
|
|
"""
|
|
type Grades {
|
|
assignmentGroup: AssignmentGroup
|
|
currentGrade: String
|
|
|
|
"""
|
|
The current score includes all graded assignments, excluding muted submissions.
|
|
"""
|
|
currentScore: Float
|
|
enrollment: Enrollment
|
|
finalGrade: String
|
|
|
|
"""
|
|
The final score includes all assignments, excluding muted submissions
|
|
(ungraded assignments are counted as 0 points).
|
|
"""
|
|
finalScore: Float
|
|
gradingPeriod: GradingPeriod
|
|
|
|
"""
|
|
The override grade. Supersedes the computed final grade if set.
|
|
"""
|
|
overrideGrade: String
|
|
|
|
"""
|
|
The override score. Supersedes the computed final score if set.
|
|
"""
|
|
overrideScore: Float
|
|
state: GradeState!
|
|
unpostedCurrentGrade: String
|
|
|
|
"""
|
|
The current score includes all graded assignments, including muted submissions.
|
|
"""
|
|
unpostedCurrentScore: Float
|
|
unpostedFinalGrade: String
|
|
|
|
"""
|
|
The final score includes all assignments, including muted submissions
|
|
(ungraded assignments are counted as 0 points).
|
|
"""
|
|
unpostedFinalScore: Float
|
|
}
|
|
|
|
"""
|
|
The connection type for Grades.
|
|
"""
|
|
type GradesConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [GradesEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [Grades]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type GradesEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: Grades
|
|
}
|
|
|
|
type GradingPeriod implements LegacyIDInterface & Node & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
|
|
"""
|
|
assignments can only be graded before the grading period closes
|
|
"""
|
|
closeDate: DateTime
|
|
createdAt: DateTime
|
|
endDate: DateTime
|
|
id: ID!
|
|
startDate: DateTime
|
|
title: String
|
|
updatedAt: DateTime
|
|
|
|
"""
|
|
used to calculate how much the assignments in this grading period
|
|
contribute to the overall grade
|
|
"""
|
|
weight: Float
|
|
}
|
|
|
|
"""
|
|
The connection type for GradingPeriod.
|
|
"""
|
|
type GradingPeriodConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [GradingPeriodEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [GradingPeriod]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type GradingPeriodEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: GradingPeriod
|
|
}
|
|
|
|
enum GradingType {
|
|
gpa_scale
|
|
letter_grade
|
|
not_graded
|
|
pass_fail
|
|
percent
|
|
points
|
|
}
|
|
|
|
type Group implements LegacyIDInterface & Node & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
createdAt: DateTime
|
|
id: ID!
|
|
member(userId: ID!): GroupMembership
|
|
membersConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): GroupMembershipConnection
|
|
name: String
|
|
updatedAt: DateTime
|
|
}
|
|
|
|
"""
|
|
The connection type for Group.
|
|
"""
|
|
type GroupConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [GroupEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [Group]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type GroupEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: Group
|
|
}
|
|
|
|
type GroupMembership implements LegacyIDInterface & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
createdAt: DateTime
|
|
state: GroupMembershipState!
|
|
updatedAt: DateTime
|
|
user: User
|
|
}
|
|
|
|
"""
|
|
The connection type for GroupMembership.
|
|
"""
|
|
type GroupMembershipConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [GroupMembershipEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [GroupMembership]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type GroupMembershipEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: GroupMembership
|
|
}
|
|
|
|
enum GroupMembershipState {
|
|
accepted
|
|
deleted
|
|
invited
|
|
rejected
|
|
requested
|
|
}
|
|
|
|
type GroupSet implements LegacyIDInterface & Node {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
autoLeader: AutoLeaderPolicy
|
|
groupsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): GroupConnection
|
|
id: ID!
|
|
|
|
"""
|
|
Sets a cap on the number of members in the group. Only applies when
|
|
self-signup is enabled.
|
|
"""
|
|
memberLimit: Int
|
|
name: String
|
|
selfSignup: SelfSignupPolicy!
|
|
}
|
|
|
|
"""
|
|
The connection type for GroupSet.
|
|
"""
|
|
type GroupSetConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [GroupSetEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [GroupSet]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type GroupSetEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: GroupSet
|
|
}
|
|
|
|
"""
|
|
Autogenerated input type of HideAssignmentGradesForSections
|
|
"""
|
|
input HideAssignmentGradesForSectionsInput {
|
|
assignmentId: ID!
|
|
sectionIds: [ID!]!
|
|
}
|
|
|
|
"""
|
|
Autogenerated return type of HideAssignmentGradesForSections
|
|
"""
|
|
type HideAssignmentGradesForSectionsPayload {
|
|
assignment: Assignment
|
|
errors: [ValidationError!]
|
|
progress: Progress
|
|
sections: [Section!]
|
|
}
|
|
|
|
"""
|
|
Autogenerated input type of HideAssignmentGrades
|
|
"""
|
|
input HideAssignmentGradesInput {
|
|
assignmentId: ID!
|
|
onlyStudentIds: [ID!]
|
|
sectionIds: [ID!]
|
|
skipStudentIds: [ID!]
|
|
}
|
|
|
|
"""
|
|
Autogenerated return type of HideAssignmentGrades
|
|
"""
|
|
type HideAssignmentGradesPayload {
|
|
assignment: Assignment
|
|
errors: [ValidationError!]
|
|
progress: Progress
|
|
sections: [Section!]
|
|
}
|
|
|
|
"""
|
|
Represents untyped JSON
|
|
"""
|
|
scalar JSON
|
|
|
|
enum LatePolicyStatusType {
|
|
late
|
|
missing
|
|
none
|
|
}
|
|
|
|
interface LegacyIDInterface {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
}
|
|
|
|
type LockInfo {
|
|
canView: Boolean
|
|
isLocked: Boolean!
|
|
lockAt: DateTime
|
|
lockedObject: Lockable
|
|
module: Module
|
|
unlockAt: DateTime
|
|
}
|
|
|
|
"""
|
|
Types that can be locked
|
|
"""
|
|
union Lockable = Assignment | Discussion | Module | Page | Quiz
|
|
|
|
"""
|
|
Autogenerated input type of MarkSubmissionCommentsRead
|
|
"""
|
|
input MarkSubmissionCommentsReadInput {
|
|
submissionCommentIds: [ID!]!
|
|
submissionId: ID!
|
|
}
|
|
|
|
"""
|
|
Autogenerated return type of MarkSubmissionCommentsRead
|
|
"""
|
|
type MarkSubmissionCommentsReadPayload {
|
|
errors: [ValidationError!]
|
|
submissionComments: [SubmissionComment!]
|
|
}
|
|
|
|
type MediaObject implements Node {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
canAddCaptions: Boolean
|
|
id: ID!
|
|
mediaSources: [MediaSource!]
|
|
mediaTracks: [MediaTrack!]
|
|
mediaType: MediaType
|
|
title: String
|
|
}
|
|
|
|
type MediaSource {
|
|
bitrate: String
|
|
contentType: String
|
|
fileExt: String
|
|
height: String
|
|
isOriginal: String
|
|
size: String
|
|
url: URL
|
|
width: String
|
|
}
|
|
|
|
type MediaTrack implements LegacyIDInterface {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
content: String!
|
|
kind: String
|
|
locale: String
|
|
mediaObject: MediaObject
|
|
webvttContent: String
|
|
}
|
|
|
|
enum MediaType {
|
|
audio
|
|
video
|
|
}
|
|
|
|
"""
|
|
Settings for Moderated Grading on an Assignment
|
|
"""
|
|
type ModeratedGrading {
|
|
"""
|
|
Boolean indicating if the assignment is moderated.
|
|
"""
|
|
enabled: Boolean
|
|
|
|
"""
|
|
The user of the grader responsible for choosing final grades for this assignment.
|
|
"""
|
|
finalGrader: User
|
|
|
|
"""
|
|
Boolean indicating if provisional graders' comments are visible to other provisional graders.
|
|
"""
|
|
graderCommentsVisibleToGraders: Boolean
|
|
|
|
"""
|
|
The maximum number of provisional graders who may issue grades for this assignment.
|
|
"""
|
|
graderCount: Int
|
|
|
|
"""
|
|
Boolean indicating if provisional graders' identities are hidden from other provisional graders.
|
|
"""
|
|
graderNamesVisibleToFinalGrader: Boolean
|
|
|
|
"""
|
|
Boolean indicating if provisional grader identities are visible to the final grader.
|
|
"""
|
|
gradersAnonymousToGraders: Boolean
|
|
}
|
|
|
|
type Module implements LegacyIDInterface & Node & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
createdAt: DateTime
|
|
id: ID!
|
|
moduleItems: [ModuleItem!]
|
|
name: String
|
|
position: Int
|
|
unlockAt: DateTime
|
|
updatedAt: DateTime
|
|
}
|
|
|
|
"""
|
|
The connection type for Module.
|
|
"""
|
|
type ModuleConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [ModuleEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [Module]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type ModuleEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: Module
|
|
}
|
|
|
|
type ModuleExternalTool implements LegacyIDInterface & ModuleItemInterface & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
createdAt: DateTime
|
|
modules: [Module!]
|
|
updatedAt: DateTime
|
|
url: String
|
|
}
|
|
|
|
type ModuleItem implements LegacyIDInterface & Node & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
content: ModuleItemInterface
|
|
createdAt: DateTime
|
|
id: ID!
|
|
module: Module
|
|
next: ModuleItem
|
|
previous: ModuleItem
|
|
updatedAt: DateTime
|
|
url: URL
|
|
}
|
|
|
|
"""
|
|
An item that can be in context modules
|
|
"""
|
|
interface ModuleItemInterface {
|
|
modules: [Module!]
|
|
}
|
|
|
|
type Mutation {
|
|
createAssignment(input: CreateAssignmentInput!): CreateAssignmentPayload
|
|
createGroupInSet(input: CreateGroupInSetInput!): CreateGroupInSetPayload
|
|
createModule(input: CreateModuleInput!): CreateModulePayload
|
|
|
|
"""
|
|
IN ACTIVE DEVELOPMENT, USE AT YOUR OWN RISK: Submit homework on an assignment.
|
|
"""
|
|
createSubmission(input: CreateSubmissionInput!): CreateSubmissionPayload
|
|
createSubmissionComment(input: CreateSubmissionCommentInput!): CreateSubmissionCommentPayload
|
|
createSubmissionDraft(input: CreateSubmissionDraftInput!): CreateSubmissionDraftPayload
|
|
hideAssignmentGrades(input: HideAssignmentGradesInput!): HideAssignmentGradesPayload
|
|
hideAssignmentGradesForSections(input: HideAssignmentGradesForSectionsInput!): HideAssignmentGradesForSectionsPayload
|
|
markSubmissionCommentsRead(input: MarkSubmissionCommentsReadInput!): MarkSubmissionCommentsReadPayload
|
|
postAssignmentGrades(input: PostAssignmentGradesInput!): PostAssignmentGradesPayload
|
|
postAssignmentGradesForSections(input: PostAssignmentGradesForSectionsInput!): PostAssignmentGradesForSectionsPayload
|
|
|
|
"""
|
|
Sets the post policy for the assignment.
|
|
"""
|
|
setAssignmentPostPolicy(input: SetAssignmentPostPolicyInput!): SetAssignmentPostPolicyPayload
|
|
|
|
"""
|
|
Sets the post policy for the course, with an option to override and delete
|
|
existing assignment post policies.
|
|
"""
|
|
setCoursePostPolicy(input: SetCoursePostPolicyInput!): SetCoursePostPolicyPayload
|
|
|
|
"""
|
|
Sets the overridden final score for the associated enrollment, optionally limited to a specific
|
|
grading period. This will supersede the computed final score/grade if present.
|
|
"""
|
|
setOverrideScore(input: SetOverrideScoreInput!): SetOverrideScorePayload
|
|
updateAssignment(input: UpdateAssignmentInput!): UpdateAssignmentPayload
|
|
}
|
|
|
|
type MutationLog {
|
|
assetString: ID!
|
|
mutationId: ID!
|
|
mutationName: String!
|
|
params: JSON
|
|
|
|
"""
|
|
If the mutation was performed by a user masquerading as another user,
|
|
this field returns the "real" (logged-in) user.
|
|
"""
|
|
realUser: User
|
|
timestamp: DateTime
|
|
user: User
|
|
}
|
|
|
|
"""
|
|
The connection type for MutationLog.
|
|
"""
|
|
type MutationLogConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [MutationLogEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [MutationLog]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type MutationLogEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: MutationLog
|
|
}
|
|
|
|
"""
|
|
An object with an ID.
|
|
"""
|
|
interface Node {
|
|
"""
|
|
ID of the object.
|
|
"""
|
|
id: ID!
|
|
}
|
|
|
|
enum NodeType {
|
|
Account
|
|
Assignment
|
|
AssignmentGroup
|
|
Course
|
|
Discussion
|
|
Enrollment
|
|
File
|
|
GradingPeriod
|
|
Group
|
|
GroupSet
|
|
MediaObject
|
|
Module
|
|
ModuleItem
|
|
Page
|
|
PostPolicy
|
|
Progress
|
|
Rubric
|
|
Section
|
|
Submission
|
|
Term
|
|
User
|
|
}
|
|
|
|
"""
|
|
Types that can be submitted online
|
|
"""
|
|
enum OnlineSubmissionType {
|
|
media_recording
|
|
online_text_entry
|
|
online_upload
|
|
online_url
|
|
}
|
|
|
|
enum OrderDirection {
|
|
ascending
|
|
descending
|
|
}
|
|
|
|
type Outcome implements LegacyIDInterface {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
}
|
|
|
|
type Page implements LegacyIDInterface & ModuleItemInterface & Node & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
createdAt: DateTime
|
|
id: ID!
|
|
modules: [Module!]
|
|
title: String
|
|
updatedAt: DateTime
|
|
}
|
|
|
|
"""
|
|
Information about pagination in a connection.
|
|
"""
|
|
type PageInfo {
|
|
"""
|
|
When paginating forwards, the cursor to continue.
|
|
"""
|
|
endCursor: String
|
|
|
|
"""
|
|
When paginating forwards, are there more items?
|
|
"""
|
|
hasNextPage: Boolean!
|
|
|
|
"""
|
|
When paginating backwards, are there more items?
|
|
"""
|
|
hasPreviousPage: Boolean!
|
|
|
|
"""
|
|
When paginating backwards, the cursor to continue.
|
|
"""
|
|
startCursor: String
|
|
}
|
|
|
|
type PageViewAnalysis {
|
|
"""
|
|
This number (0-3) is intended to give an idea of how the student is doing relative to others in the course
|
|
"""
|
|
level: Int
|
|
|
|
"""
|
|
The maximum number of views/participations in this course
|
|
"""
|
|
max: Int
|
|
|
|
"""
|
|
The number of views/participations this student has
|
|
"""
|
|
total: Int
|
|
}
|
|
|
|
"""
|
|
Settings for Peer Reviews on an Assignment
|
|
"""
|
|
type PeerReviews {
|
|
"""
|
|
Boolean representing whether or not peer reviews are anonymous
|
|
"""
|
|
anonymousReviews: Boolean
|
|
|
|
"""
|
|
Boolean indicating peer reviews are assigned automatically. If false, the
|
|
teacher is expected to manually assign peer reviews.
|
|
"""
|
|
automaticReviews: Boolean
|
|
|
|
"""
|
|
Integer representing the amount of reviews each user is assigned.
|
|
"""
|
|
count: Int
|
|
|
|
"""
|
|
Date and Time representing when the peer reviews are due
|
|
"""
|
|
dueAt: DateTime
|
|
|
|
"""
|
|
Boolean indicating if peer reviews are required for this assignment
|
|
"""
|
|
enabled: Boolean
|
|
|
|
"""
|
|
Boolean representing whether or not members from within the same group on a
|
|
group assignment can be assigned to peer review their own group's work
|
|
"""
|
|
intraReviews: Boolean
|
|
}
|
|
|
|
"""
|
|
Autogenerated input type of PostAssignmentGradesForSections
|
|
"""
|
|
input PostAssignmentGradesForSectionsInput {
|
|
assignmentId: ID!
|
|
gradedOnly: Boolean
|
|
sectionIds: [ID!]!
|
|
}
|
|
|
|
"""
|
|
Autogenerated return type of PostAssignmentGradesForSections
|
|
"""
|
|
type PostAssignmentGradesForSectionsPayload {
|
|
assignment: Assignment
|
|
errors: [ValidationError!]
|
|
progress: Progress
|
|
sections: [Section!]
|
|
}
|
|
|
|
"""
|
|
Autogenerated input type of PostAssignmentGrades
|
|
"""
|
|
input PostAssignmentGradesInput {
|
|
assignmentId: ID!
|
|
gradedOnly: Boolean
|
|
onlyStudentIds: [ID!]
|
|
sectionIds: [ID!]
|
|
skipStudentIds: [ID!]
|
|
}
|
|
|
|
"""
|
|
Autogenerated return type of PostAssignmentGrades
|
|
"""
|
|
type PostAssignmentGradesPayload {
|
|
assignment: Assignment
|
|
errors: [ValidationError!]
|
|
progress: Progress
|
|
sections: [Section!]
|
|
}
|
|
|
|
"""
|
|
A PostPolicy sets the policy for whether a Submission's grades are posted
|
|
automatically or manually. A PostPolicy can be set at the Course and/or
|
|
Assignment level.
|
|
"""
|
|
type PostPolicy implements LegacyIDInterface & Node {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
assignment: Assignment
|
|
course: Course!
|
|
|
|
"""
|
|
ID of the object.
|
|
"""
|
|
id: ID!
|
|
postManually: Boolean!
|
|
}
|
|
|
|
"""
|
|
The connection type for PostPolicy.
|
|
"""
|
|
type PostPolicyConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [PostPolicyEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [PostPolicy]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type PostPolicyEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: PostPolicy
|
|
}
|
|
|
|
"""
|
|
Customized proficiency ratings
|
|
"""
|
|
type ProficiencyRating implements LegacyIDInterface {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
color: String
|
|
description: String
|
|
mastery: Boolean!
|
|
points: Float
|
|
}
|
|
|
|
"""
|
|
The connection type for ProficiencyRating.
|
|
"""
|
|
type ProficiencyRatingConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [ProficiencyRatingEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [ProficiencyRating]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type ProficiencyRatingEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: ProficiencyRating
|
|
}
|
|
|
|
"""
|
|
Returns completion status and progress information about an asynchronous job
|
|
"""
|
|
type Progress implements LegacyIDInterface & Node & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
|
|
"""
|
|
percent completed
|
|
"""
|
|
completion: Int
|
|
context: ProgressContext
|
|
createdAt: DateTime
|
|
id: ID!
|
|
|
|
"""
|
|
details about the job
|
|
"""
|
|
message: String
|
|
state: ProgressState!
|
|
|
|
"""
|
|
the type of operation
|
|
"""
|
|
tag: String!
|
|
updatedAt: DateTime
|
|
}
|
|
|
|
union ProgressContext = Assignment | Course | File | GroupSet | User
|
|
|
|
enum ProgressState {
|
|
completed
|
|
failed
|
|
queued
|
|
running
|
|
}
|
|
|
|
type Query {
|
|
account(
|
|
"""
|
|
a graphql or legacy id
|
|
"""
|
|
id: ID!
|
|
): Account
|
|
|
|
"""
|
|
All courses viewable by the current user
|
|
"""
|
|
allCourses: [Course!]
|
|
assignment(
|
|
"""
|
|
a graphql or legacy id
|
|
"""
|
|
id: ID!
|
|
): Assignment
|
|
assignmentGroup(
|
|
"""
|
|
a graphql or legacy id
|
|
"""
|
|
id: ID!
|
|
): AssignmentGroup
|
|
auditLogs: AuditLogs
|
|
course(
|
|
"""
|
|
a graphql or legacy id
|
|
"""
|
|
id: ID!
|
|
): Course
|
|
|
|
"""
|
|
Fetches an object given its type and legacy ID
|
|
"""
|
|
legacyNode(_id: ID!, type: NodeType!): Node
|
|
|
|
"""
|
|
ModuleItem
|
|
"""
|
|
moduleItem(
|
|
"""
|
|
a graphql or legacy id
|
|
"""
|
|
id: ID!
|
|
): ModuleItem
|
|
|
|
"""
|
|
Fetches an object given its ID.
|
|
"""
|
|
node(
|
|
"""
|
|
ID of the object.
|
|
"""
|
|
id: ID!
|
|
): Node
|
|
submission(
|
|
"""
|
|
a graphql or legacy id
|
|
"""
|
|
id: ID!
|
|
): Submission
|
|
term(
|
|
"""
|
|
a graphql or legacy id
|
|
"""
|
|
id: ID!
|
|
): Term
|
|
}
|
|
|
|
type Quiz implements LegacyIDInterface & ModuleItemInterface & Node & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
createdAt: DateTime
|
|
id: ID!
|
|
modules: [Module!]
|
|
updatedAt: DateTime
|
|
}
|
|
|
|
type Rubric implements LegacyIDInterface & Node {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
|
|
"""
|
|
The different criteria that makes up this rubric
|
|
"""
|
|
criteria: [RubricCriterion!]!
|
|
freeFormCriterionComments: Boolean!
|
|
hideScoreTotal: Boolean!
|
|
id: ID!
|
|
pointsPossible: Float
|
|
title: String
|
|
}
|
|
|
|
"""
|
|
An assessment for a rubric
|
|
"""
|
|
type RubricAssessment implements LegacyIDInterface {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
|
|
"""
|
|
The assessments for the individual criteria in this rubric
|
|
"""
|
|
assessmentRatings: [RubricAssessmentRating!]!
|
|
assessmentType: AssessmentType!
|
|
assessor: User
|
|
rubricAssociation: RubricAssociation
|
|
score: Float
|
|
user: User
|
|
}
|
|
|
|
"""
|
|
The connection type for RubricAssessment.
|
|
"""
|
|
type RubricAssessmentConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [RubricAssessmentEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [RubricAssessment]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type RubricAssessmentEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: RubricAssessment
|
|
}
|
|
|
|
"""
|
|
An assessment for a specific criteria in a rubric
|
|
"""
|
|
type RubricAssessmentRating {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID
|
|
comments: String
|
|
commentsHtml: String
|
|
|
|
"""
|
|
The rubric criteria that this assessment is for
|
|
"""
|
|
criterion: RubricCriterion
|
|
description: String
|
|
outcome: Outcome
|
|
points: Float
|
|
}
|
|
|
|
"""
|
|
How a rubric is being used in a context
|
|
"""
|
|
type RubricAssociation implements LegacyIDInterface {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
hidePoints: Boolean!
|
|
hideScoreTotal: Boolean!
|
|
useForGrading: Boolean!
|
|
}
|
|
|
|
"""
|
|
Individual criteria for a rubric
|
|
"""
|
|
type RubricCriterion implements LegacyIDInterface {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
criterionUseRange: Boolean!
|
|
description: String
|
|
ignoreForScoring: Boolean!
|
|
longDescription: String
|
|
masteryPoints: Float
|
|
outcome: Outcome
|
|
points: Float
|
|
|
|
"""
|
|
The possible ratings available for this criterion
|
|
"""
|
|
ratings: [RubricRating!]
|
|
}
|
|
|
|
"""
|
|
Possible rating for a rubric criterion
|
|
"""
|
|
type RubricRating implements LegacyIDInterface {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
description: String!
|
|
longDescription: String
|
|
points: Float!
|
|
}
|
|
|
|
type Section implements LegacyIDInterface & Node & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
createdAt: DateTime
|
|
id: ID!
|
|
name: String!
|
|
updatedAt: DateTime
|
|
}
|
|
|
|
"""
|
|
The connection type for Section.
|
|
"""
|
|
type SectionConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [SectionEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [Section]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type SectionEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: Section
|
|
}
|
|
|
|
"""
|
|
Determines if/how a student may join a group. A student can belong to
|
|
only one group per group set at a time.
|
|
"""
|
|
enum SelfSignupPolicy {
|
|
"""
|
|
self signup is not allowed
|
|
"""
|
|
disabled
|
|
|
|
"""
|
|
students may join any group
|
|
"""
|
|
enabled
|
|
|
|
"""
|
|
students may join a group in their section
|
|
"""
|
|
restricted
|
|
}
|
|
|
|
"""
|
|
Autogenerated input type of SetAssignmentPostPolicy
|
|
"""
|
|
input SetAssignmentPostPolicyInput {
|
|
assignmentId: ID!
|
|
postManually: Boolean!
|
|
}
|
|
|
|
"""
|
|
Autogenerated return type of SetAssignmentPostPolicy
|
|
"""
|
|
type SetAssignmentPostPolicyPayload {
|
|
errors: [ValidationError!]
|
|
postPolicy: PostPolicy
|
|
}
|
|
|
|
"""
|
|
Autogenerated input type of SetCoursePostPolicy
|
|
"""
|
|
input SetCoursePostPolicyInput {
|
|
courseId: ID!
|
|
postManually: Boolean!
|
|
}
|
|
|
|
"""
|
|
Autogenerated return type of SetCoursePostPolicy
|
|
"""
|
|
type SetCoursePostPolicyPayload {
|
|
errors: [ValidationError!]
|
|
postPolicy: PostPolicy
|
|
}
|
|
|
|
"""
|
|
Autogenerated input type of SetOverrideScore
|
|
"""
|
|
input SetOverrideScoreInput {
|
|
enrollmentId: ID!
|
|
gradingPeriodId: ID
|
|
overrideScore: Float
|
|
}
|
|
|
|
"""
|
|
Autogenerated return type of SetOverrideScore
|
|
"""
|
|
type SetOverrideScorePayload {
|
|
errors: [ValidationError!]
|
|
grades: Grades
|
|
}
|
|
|
|
"""
|
|
basic information about a students activity in a course
|
|
"""
|
|
type StudentSummaryAnalytics {
|
|
pageViews: PageViewAnalysis
|
|
participations: PageViewAnalysis
|
|
tardinessBreakdown: TardinessBreakdown
|
|
}
|
|
|
|
type SubHeader implements ModuleItemInterface {
|
|
modules: [Module!]
|
|
title: String
|
|
}
|
|
|
|
type Submission implements LegacyIDInterface & Node & SubmissionInterface & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
assignment: Assignment
|
|
attachment: File
|
|
attachments: [File!]
|
|
attempt: Int!
|
|
body: String
|
|
commentsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
filter: SubmissionCommentFilterInput = {}
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): SubmissionCommentConnection
|
|
createdAt: DateTime
|
|
|
|
"""
|
|
how many points are being deducted due to late policy
|
|
"""
|
|
deductedPoints: Float
|
|
|
|
"""
|
|
the submission grade *before* late policy deductions were applied
|
|
"""
|
|
enteredGrade: String
|
|
|
|
"""
|
|
the submission score *before* late policy deductions were applied
|
|
"""
|
|
enteredScore: Float
|
|
|
|
"""
|
|
excused assignments are ignored when calculating grades
|
|
"""
|
|
excused: Boolean
|
|
grade: String
|
|
gradeHidden: Boolean!
|
|
|
|
"""
|
|
was the grade given on the current submission (resubmission)
|
|
"""
|
|
gradeMatchesCurrentSubmission: Boolean
|
|
gradedAt: DateTime
|
|
gradingStatus: SubmissionGradingStatus
|
|
id: ID!
|
|
late: Boolean
|
|
latePolicyStatus: LatePolicyStatusType
|
|
mediaObject: MediaObject
|
|
missing: Boolean
|
|
posted: Boolean!
|
|
postedAt: DateTime
|
|
rubricAssessmentsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
filter: SubmissionRubricAssessmentFilterInput = {}
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): RubricAssessmentConnection
|
|
score: Float
|
|
state: SubmissionState!
|
|
submissionDraft: SubmissionDraft
|
|
submissionHistoriesConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
filter: SubmissionHistoryFilterInput = {}
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): SubmissionHistoryConnection
|
|
submissionStatus: String
|
|
submissionType: SubmissionType
|
|
submittedAt: DateTime
|
|
turnitinData: [TurnitinData!]
|
|
unreadCommentCount: Int!
|
|
updatedAt: DateTime
|
|
url: URL
|
|
user: User
|
|
}
|
|
|
|
type SubmissionComment implements LegacyIDInterface & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
attachments: [File!]
|
|
attempt: Int!
|
|
author: User
|
|
comment: String
|
|
createdAt: DateTime
|
|
mediaObject: MediaObject
|
|
read: Boolean!
|
|
updatedAt: DateTime
|
|
}
|
|
|
|
"""
|
|
The connection type for SubmissionComment.
|
|
"""
|
|
type SubmissionCommentConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [SubmissionCommentEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [SubmissionComment]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type SubmissionCommentEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: SubmissionComment
|
|
}
|
|
|
|
input SubmissionCommentFilterInput {
|
|
"""
|
|
If all of the comments, regardless of the submission attempt, should be returned.
|
|
If this is true, the for_attempt argument will be ignored.
|
|
"""
|
|
allComments: Boolean = false
|
|
|
|
"""
|
|
What submission attempt the comments should be returned for. If not specified,
|
|
it will return the comments for the current submisssion or submission history.
|
|
"""
|
|
forAttempt: Int = null
|
|
}
|
|
|
|
"""
|
|
The connection type for Submission.
|
|
"""
|
|
type SubmissionConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [SubmissionEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [Submission]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
type SubmissionDraft implements LegacyIDInterface {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
activeSubmissionType: DraftableSubmissionType
|
|
attachments: [File!]
|
|
body: String
|
|
mediaObject: MediaObject
|
|
meetsAssignmentCriteria: Boolean!
|
|
meetsMediaRecordingCriteria: Boolean!
|
|
meetsTextEntryCriteria: Boolean!
|
|
meetsUploadCriteria: Boolean!
|
|
meetsUrlCriteria: Boolean!
|
|
submissionAttempt: Int!
|
|
url: URL
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type SubmissionEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: Submission
|
|
}
|
|
|
|
input SubmissionFilterInput {
|
|
gradedSince: DateTime
|
|
sectionIds: [ID!]
|
|
states: [SubmissionState!] = [submitted, pending_review, graded]
|
|
submittedSince: DateTime
|
|
}
|
|
|
|
enum SubmissionGradingStatus {
|
|
excused
|
|
graded
|
|
needs_grading
|
|
needs_review
|
|
}
|
|
|
|
type SubmissionHistory implements SubmissionInterface & Timestamped {
|
|
assignment: Assignment
|
|
attachment: File
|
|
attachments: [File!]
|
|
attempt: Int!
|
|
body: String
|
|
commentsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
filter: SubmissionCommentFilterInput = {}
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): SubmissionCommentConnection
|
|
createdAt: DateTime
|
|
|
|
"""
|
|
how many points are being deducted due to late policy
|
|
"""
|
|
deductedPoints: Float
|
|
|
|
"""
|
|
the submission grade *before* late policy deductions were applied
|
|
"""
|
|
enteredGrade: String
|
|
|
|
"""
|
|
the submission score *before* late policy deductions were applied
|
|
"""
|
|
enteredScore: Float
|
|
|
|
"""
|
|
excused assignments are ignored when calculating grades
|
|
"""
|
|
excused: Boolean
|
|
grade: String
|
|
gradeHidden: Boolean!
|
|
|
|
"""
|
|
was the grade given on the current submission (resubmission)
|
|
"""
|
|
gradeMatchesCurrentSubmission: Boolean
|
|
gradedAt: DateTime
|
|
gradingStatus: SubmissionGradingStatus
|
|
late: Boolean
|
|
latePolicyStatus: LatePolicyStatusType
|
|
mediaObject: MediaObject
|
|
missing: Boolean
|
|
posted: Boolean!
|
|
postedAt: DateTime
|
|
|
|
"""
|
|
The canvas legacy id of the root submission this history belongs to
|
|
"""
|
|
rootId: ID!
|
|
rubricAssessmentsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
filter: SubmissionRubricAssessmentFilterInput = {}
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): RubricAssessmentConnection
|
|
score: Float
|
|
state: SubmissionState!
|
|
submissionDraft: SubmissionDraft
|
|
submissionStatus: String
|
|
submissionType: SubmissionType
|
|
submittedAt: DateTime
|
|
turnitinData: [TurnitinData!]
|
|
unreadCommentCount: Int!
|
|
updatedAt: DateTime
|
|
url: URL
|
|
user: User
|
|
}
|
|
|
|
"""
|
|
The connection type for SubmissionHistory.
|
|
"""
|
|
type SubmissionHistoryConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [SubmissionHistoryEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [SubmissionHistory]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type SubmissionHistoryEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: SubmissionHistory
|
|
}
|
|
|
|
input SubmissionHistoryFilterInput {
|
|
"""
|
|
If the most current submission should be included in the submission
|
|
history results. Defaults to true.
|
|
"""
|
|
includeCurrentSubmission: Boolean = true
|
|
states: [SubmissionState!] = [deleted, graded, pending_review, submitted, ungraded, unsubmitted]
|
|
}
|
|
|
|
"""
|
|
Types for submission or submission history
|
|
"""
|
|
interface SubmissionInterface {
|
|
assignment: Assignment
|
|
attachment: File
|
|
attachments: [File!]
|
|
attempt: Int!
|
|
body: String
|
|
commentsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
filter: SubmissionCommentFilterInput = {}
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): SubmissionCommentConnection
|
|
|
|
"""
|
|
how many points are being deducted due to late policy
|
|
"""
|
|
deductedPoints: Float
|
|
|
|
"""
|
|
the submission grade *before* late policy deductions were applied
|
|
"""
|
|
enteredGrade: String
|
|
|
|
"""
|
|
the submission score *before* late policy deductions were applied
|
|
"""
|
|
enteredScore: Float
|
|
|
|
"""
|
|
excused assignments are ignored when calculating grades
|
|
"""
|
|
excused: Boolean
|
|
grade: String
|
|
gradeHidden: Boolean!
|
|
|
|
"""
|
|
was the grade given on the current submission (resubmission)
|
|
"""
|
|
gradeMatchesCurrentSubmission: Boolean
|
|
gradedAt: DateTime
|
|
gradingStatus: SubmissionGradingStatus
|
|
late: Boolean
|
|
latePolicyStatus: LatePolicyStatusType
|
|
mediaObject: MediaObject
|
|
missing: Boolean
|
|
posted: Boolean!
|
|
postedAt: DateTime
|
|
rubricAssessmentsConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
filter: SubmissionRubricAssessmentFilterInput = {}
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): RubricAssessmentConnection
|
|
score: Float
|
|
state: SubmissionState!
|
|
submissionDraft: SubmissionDraft
|
|
submissionStatus: String
|
|
submissionType: SubmissionType
|
|
submittedAt: DateTime
|
|
turnitinData: [TurnitinData!]
|
|
unreadCommentCount: Int!
|
|
url: URL
|
|
user: User
|
|
}
|
|
|
|
input SubmissionOrderCriteria {
|
|
direction: OrderDirection
|
|
field: SubmissionOrderField!
|
|
}
|
|
|
|
enum SubmissionOrderField {
|
|
_id
|
|
gradedAt
|
|
}
|
|
|
|
input SubmissionRubricAssessmentFilterInput {
|
|
"""
|
|
What submission attempt the rubric assessment should be returned for. If not
|
|
specified, it will return the rubric assessment for the current submisssion
|
|
or submission history.
|
|
"""
|
|
forAttempt: Int = null
|
|
}
|
|
|
|
input SubmissionSearchFilterInput {
|
|
enrollmentTypes: [EnrollmentType!]
|
|
|
|
"""
|
|
Limit results by grading status
|
|
"""
|
|
gradingStatus: SubmissionGradingStatus
|
|
|
|
"""
|
|
Limit results to submissions that are late
|
|
"""
|
|
late: Boolean
|
|
|
|
"""
|
|
Limit results to submissions that scored below the specified value
|
|
"""
|
|
scoredLessThan: Float
|
|
|
|
"""
|
|
Limit results to submissions that scored above the specified value
|
|
"""
|
|
scoredMoreThan: Float
|
|
sectionIds: [ID!]
|
|
states: [SubmissionState!] = [submitted, pending_review, graded]
|
|
|
|
"""
|
|
The partial name or full ID of the users to match and return in the
|
|
results list. Must be at least 3 characters.
|
|
Queries by administrative users will search on SIS ID, login ID, name, or email
|
|
address; non-administrative queries will only be compared against name.
|
|
"""
|
|
userSearch: String
|
|
}
|
|
|
|
"""
|
|
Specify a sort for the results
|
|
"""
|
|
input SubmissionSearchOrder {
|
|
direction: OrderDirection
|
|
field: SubmissionSearchOrderField!
|
|
}
|
|
|
|
"""
|
|
The user or submission field to sort by
|
|
"""
|
|
enum SubmissionSearchOrderField {
|
|
score
|
|
submitted_at
|
|
username
|
|
}
|
|
|
|
enum SubmissionState {
|
|
deleted
|
|
graded
|
|
pending_review
|
|
submitted
|
|
ungraded
|
|
unsubmitted
|
|
}
|
|
|
|
"""
|
|
Types of submissions an assignment accepts
|
|
"""
|
|
enum SubmissionType {
|
|
attendance
|
|
discussion_topic
|
|
external_tool
|
|
media_recording
|
|
none
|
|
not_graded
|
|
on_paper
|
|
online_quiz
|
|
online_text_entry
|
|
online_upload
|
|
online_url
|
|
wiki_page
|
|
}
|
|
|
|
"""
|
|
statistics based on timeliness of student submissions
|
|
"""
|
|
type TardinessBreakdown {
|
|
late: Float
|
|
missing: Float
|
|
onTime: Float
|
|
total: Int
|
|
}
|
|
|
|
type Term implements LegacyIDInterface & Node {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
|
|
"""
|
|
courses for this term
|
|
"""
|
|
coursesConnection(
|
|
"""
|
|
Returns the elements in the list that come after the specified cursor.
|
|
"""
|
|
after: String
|
|
|
|
"""
|
|
Returns the elements in the list that come before the specified cursor.
|
|
"""
|
|
before: String
|
|
|
|
"""
|
|
Returns the first _n_ elements from the list.
|
|
"""
|
|
first: Int
|
|
|
|
"""
|
|
Returns the last _n_ elements from the list.
|
|
"""
|
|
last: Int
|
|
): CourseConnection
|
|
endAt: DateTime
|
|
id: ID!
|
|
name: String
|
|
sisTermId: ID
|
|
startAt: DateTime
|
|
}
|
|
|
|
"""
|
|
Contains timestamp metadata
|
|
"""
|
|
interface Timestamped {
|
|
createdAt: DateTime
|
|
updatedAt: DateTime
|
|
}
|
|
|
|
union TurnitinContext = File | Submission
|
|
|
|
type TurnitinData {
|
|
score: Float
|
|
status: String
|
|
target: TurnitinContext!
|
|
}
|
|
|
|
scalar URL
|
|
|
|
"""
|
|
Autogenerated input type of UpdateAssignment
|
|
"""
|
|
input UpdateAssignmentInput {
|
|
allowedAttempts: Int
|
|
allowedExtensions: [String!]
|
|
|
|
"""
|
|
requires anonymous_marking course feature to be set to true
|
|
"""
|
|
anonymousGrading: Boolean
|
|
anonymousInstructorAnnotations: Boolean
|
|
assignmentGroupId: ID
|
|
assignmentOverrides: [AssignmentOverrideCreateOrUpdate!]
|
|
description: String
|
|
dueAt: DateTime
|
|
gradeGroupStudentsIndividually: Boolean
|
|
gradingType: GradingType
|
|
groupSetId: ID
|
|
id: ID!
|
|
lockAt: DateTime
|
|
moderatedGrading: AssignmentModeratedGradingUpdate
|
|
moduleIds: [ID!]
|
|
muted: Boolean
|
|
name: String
|
|
omitFromFinalGrade: Boolean
|
|
onlyVisibleToOverrides: Boolean
|
|
peerReviews: AssignmentPeerReviewsUpdate
|
|
pointsPossible: Float
|
|
position: Int
|
|
postToSis: Boolean
|
|
state: AssignmentState
|
|
submissionTypes: [SubmissionType!]
|
|
unlockAt: DateTime
|
|
}
|
|
|
|
"""
|
|
Autogenerated return type of UpdateAssignment
|
|
"""
|
|
type UpdateAssignmentPayload {
|
|
assignment: Assignment
|
|
errors: [ValidationError!]
|
|
}
|
|
|
|
type User implements LegacyIDInterface & Node & Timestamped {
|
|
"""
|
|
legacy canvas id
|
|
"""
|
|
_id: ID!
|
|
avatarUrl: URL
|
|
createdAt: DateTime
|
|
email: String
|
|
enrollments(
|
|
"""
|
|
only return enrollments for this course
|
|
"""
|
|
courseId: ID
|
|
): [Enrollment!]!
|
|
|
|
"""
|
|
**NOTE**: this only returns groups for the currently logged-in user.
|
|
"""
|
|
groups: [Group!]
|
|
id: ID!
|
|
name: String
|
|
pronouns: String
|
|
|
|
"""
|
|
A short name the user has selected, for use in conversations or other less formal places through the site.
|
|
"""
|
|
shortName: String
|
|
|
|
"""
|
|
The name of the user that is should be used for sorting groups of users, such as in the gradebook.
|
|
"""
|
|
sortableName: String
|
|
summaryAnalytics(
|
|
"""
|
|
returns summary analytics for this course
|
|
"""
|
|
courseId: ID!
|
|
): StudentSummaryAnalytics
|
|
updatedAt: DateTime
|
|
}
|
|
|
|
"""
|
|
The connection type for User.
|
|
"""
|
|
type UserConnection {
|
|
"""
|
|
A list of edges.
|
|
"""
|
|
edges: [UserEdge]
|
|
|
|
"""
|
|
A list of nodes.
|
|
"""
|
|
nodes: [User]
|
|
|
|
"""
|
|
Information to aid in pagination.
|
|
"""
|
|
pageInfo: PageInfo!
|
|
}
|
|
|
|
"""
|
|
An edge in a connection.
|
|
"""
|
|
type UserEdge {
|
|
"""
|
|
A cursor for use in pagination.
|
|
"""
|
|
cursor: String!
|
|
|
|
"""
|
|
The item at the end of the edge.
|
|
"""
|
|
node: User
|
|
}
|
|
|
|
type ValidationError {
|
|
attribute: String
|
|
message: String!
|
|
}
|