lms-graphql-api 1.9.0 → 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/lms_graphql/mutations/canvas/add_multiple_allowed_domains_to_account.rb +1 -1
- data/lib/lms_graphql/mutations/canvas/add_users_to_content_share.rb +1 -1
- data/lib/lms_graphql/mutations/canvas/create_content_share.rb +1 -1
- data/lib/lms_graphql/mutations/canvas/create_instaccess_token.rb +22 -0
- data/lib/lms_graphql/mutations/canvas/create_jwt.rb +5 -3
- data/lib/lms_graphql/mutations/canvas/create_user_login.rb +4 -2
- data/lib/lms_graphql/mutations/canvas/create_webhook_subscription.rb +1 -1
- data/lib/lms_graphql/mutations/canvas/delete_eportfolio.rb +24 -0
- data/lib/lms_graphql/mutations/canvas/edit_user.rb +4 -2
- data/lib/lms_graphql/mutations/canvas/edit_user_login.rb +6 -2
- data/lib/lms_graphql/mutations/canvas/grade_or_comment_on_multiple_submissions_courses_assignments.rb +3 -3
- data/lib/lms_graphql/mutations/canvas/grade_or_comment_on_multiple_submissions_courses_submissions.rb +3 -3
- data/lib/lms_graphql/mutations/canvas/grade_or_comment_on_multiple_submissions_sections_assignments.rb +3 -3
- data/lib/lms_graphql/mutations/canvas/grade_or_comment_on_multiple_submissions_sections_submissions.rb +3 -3
- data/lib/lms_graphql/mutations/canvas/grade_or_comment_on_submission_by_anonymous_id_courses.rb +51 -0
- data/lib/lms_graphql/mutations/canvas/grade_or_comment_on_submission_by_anonymous_id_sections.rb +51 -0
- data/lib/lms_graphql/mutations/canvas/mark_document_annotations_as_read_courses.rb +28 -0
- data/lib/lms_graphql/mutations/canvas/mark_document_annotations_as_read_sections.rb +28 -0
- data/lib/lms_graphql/mutations/canvas/mark_rubric_comments_as_read_courses.rb +28 -0
- data/lib/lms_graphql/mutations/canvas/mark_rubric_comments_as_read_sections.rb +28 -0
- data/lib/lms_graphql/mutations/canvas/moderate_all_eportfolios_for_user.rb +27 -0
- data/lib/lms_graphql/mutations/canvas/moderate_eportfolio.rb +27 -0
- data/lib/lms_graphql/mutations/canvas/mutations.rb +19 -8
- data/lib/lms_graphql/mutations/canvas/restore_deleted_eportfolio.rb +24 -0
- data/lib/lms_graphql/mutations/canvas/terminate_all_user_sessions.rb +24 -0
- data/lib/lms_graphql/mutations/canvas/update_associated_courses.rb +2 -2
- data/lib/lms_graphql/mutations/canvas/update_course.rb +8 -2
- data/lib/lms_graphql/mutations/canvas/update_course_settings.rb +3 -1
- data/lib/lms_graphql/resolvers/canvas/get_all_eportfolios_for_user.rb +25 -0
- data/lib/lms_graphql/resolvers/canvas/get_bulk_user_progress.rb +22 -0
- data/lib/lms_graphql/resolvers/canvas/get_custom_colors.rb +1 -1
- data/lib/lms_graphql/resolvers/canvas/get_department_level_statistics_broken_down_by_subaccount_completed.rb +22 -0
- data/lib/lms_graphql/resolvers/canvas/get_department_level_statistics_broken_down_by_subaccount_current.rb +22 -0
- data/lib/lms_graphql/resolvers/canvas/get_department_level_statistics_broken_down_by_subaccount_terms.rb +24 -0
- data/lib/lms_graphql/resolvers/canvas/get_document_annotations_read_state_courses.rb +26 -0
- data/lib/lms_graphql/resolvers/canvas/get_document_annotations_read_state_sections.rb +26 -0
- data/lib/lms_graphql/resolvers/canvas/get_eportfolio.rb +22 -0
- data/lib/lms_graphql/resolvers/canvas/get_eportfolio_pages.rb +23 -0
- data/lib/lms_graphql/resolvers/canvas/get_manually_created_courses_sub_account_for_domain_root_account.rb +22 -0
- data/lib/lms_graphql/resolvers/canvas/get_rubric_comments_read_state_courses.rb +26 -0
- data/lib/lms_graphql/resolvers/canvas/get_rubric_comments_read_state_sections.rb +26 -0
- data/lib/lms_graphql/resolvers/canvas/get_single_submission_by_anonymous_id_courses.rb +28 -0
- data/lib/lms_graphql/resolvers/canvas/get_single_submission_by_anonymous_id_sections.rb +28 -0
- data/lib/lms_graphql/resolvers/canvas/list_announcements.rb +1 -1
- data/lib/lms_graphql/resolvers/canvas/list_missing_submissions.rb +3 -1
- data/lib/lms_graphql/resolvers/canvas/list_planner_items_planner.rb +3 -1
- data/lib/lms_graphql/resolvers/canvas/list_planner_items_users.rb +3 -1
- data/lib/lms_graphql/types/canvas/account_notification_input.rb +2 -2
- data/lib/lms_graphql/types/canvas/appointment_group_input.rb +6 -6
- data/lib/lms_graphql/types/canvas/assignment.rb +1 -0
- data/lib/lms_graphql/types/canvas/assignment_event_input.rb +2 -2
- data/lib/lms_graphql/types/canvas/assignment_input.rb +5 -4
- data/lib/lms_graphql/types/canvas/authentication_event_input.rb +2 -2
- data/lib/lms_graphql/types/canvas/change_record.rb +1 -1
- data/lib/lms_graphql/types/canvas/change_record_input.rb +1 -1
- data/lib/lms_graphql/types/canvas/collaborator_input.rb +2 -2
- data/lib/lms_graphql/types/canvas/comm_message_input.rb +2 -2
- data/lib/lms_graphql/types/canvas/communication_channel_input.rb +4 -4
- data/lib/lms_graphql/types/canvas/completion_requirement_input.rb +2 -2
- data/lib/lms_graphql/types/canvas/content_export_input.rb +4 -4
- data/lib/lms_graphql/types/canvas/content_migration_input.rb +2 -2
- data/lib/lms_graphql/types/canvas/content_share.rb +1 -1
- data/lib/lms_graphql/types/canvas/content_share_input.rb +1 -1
- data/lib/lms_graphql/types/canvas/course_input.rb +4 -4
- data/lib/lms_graphql/types/canvas/discussion_topic.rb +1 -1
- data/lib/lms_graphql/types/canvas/discussion_topic_input.rb +7 -7
- data/lib/lms_graphql/types/canvas/e_portfolio.rb +24 -0
- data/lib/lms_graphql/types/canvas/e_portfolio_input.rb +24 -0
- data/lib/lms_graphql/types/canvas/e_portfolio_page.rb +20 -0
- data/lib/lms_graphql/types/canvas/e_portfolio_page_input.rb +20 -0
- data/lib/lms_graphql/types/canvas/epub_export_input.rb +2 -2
- data/lib/lms_graphql/types/canvas/exception_record.rb +1 -1
- data/lib/lms_graphql/types/canvas/exception_record_input.rb +1 -1
- data/lib/lms_graphql/types/canvas/external_feed_input.rb +2 -2
- data/lib/lms_graphql/types/canvas/favorite_input.rb +2 -2
- data/lib/lms_graphql/types/canvas/feature.rb +1 -1
- data/lib/lms_graphql/types/canvas/feature_flag_input.rb +4 -4
- data/lib/lms_graphql/types/canvas/feature_input.rb +3 -3
- data/lib/lms_graphql/types/canvas/group_category_input.rb +4 -4
- data/lib/lms_graphql/types/canvas/group_input.rb +4 -4
- data/lib/lms_graphql/types/canvas/group_membership_input.rb +2 -2
- data/lib/lms_graphql/types/canvas/inst_access_token.rb +14 -0
- data/lib/lms_graphql/types/canvas/inst_access_token_input.rb +14 -0
- data/lib/lms_graphql/types/canvas/migration_issue_input.rb +4 -4
- data/lib/lms_graphql/types/canvas/module_input.rb +4 -4
- data/lib/lms_graphql/types/canvas/module_item_input.rb +2 -2
- data/lib/lms_graphql/types/canvas/notification_preference_input.rb +2 -2
- data/lib/lms_graphql/types/canvas/outcome_import.rb +2 -1
- data/lib/lms_graphql/types/canvas/outcome_import_input.rb +4 -3
- data/lib/lms_graphql/types/canvas/outcome_input.rb +2 -2
- data/lib/lms_graphql/types/canvas/proficiency.rb +1 -1
- data/lib/lms_graphql/types/canvas/proficiency_input.rb +1 -1
- data/lib/lms_graphql/types/canvas/progress_input.rb +2 -2
- data/lib/lms_graphql/types/canvas/query_type.rb +107 -51
- data/lib/lms_graphql/types/canvas/quiz_input.rb +6 -6
- data/lib/lms_graphql/types/canvas/quiz_report_input.rb +2 -2
- data/lib/lms_graphql/types/canvas/report_parameter_input.rb +2 -2
- data/lib/lms_graphql/types/canvas/rubric_assessment.rb +1 -1
- data/lib/lms_graphql/types/canvas/rubric_assessment_input.rb +1 -1
- data/lib/lms_graphql/types/canvas/sis_assignment_input.rb +2 -2
- data/lib/lms_graphql/types/canvas/sis_import.rb +3 -3
- data/lib/lms_graphql/types/canvas/sis_import_input.rb +5 -5
- data/lib/lms_graphql/types/canvas/submission_input.rb +6 -6
- data/lib/lms_graphql/types/canvas/user.rb +2 -0
- data/lib/lms_graphql/types/canvas/user_input.rb +2 -0
- data/lib/lms_graphql/types/canvas_forward_declarations.rb +20 -16
- data/lib/lms_graphql/types/date_time_type.rb +4 -0
- data/lib/lms_graphql/version.rb +1 -1
- metadata +38 -6
@@ -9,8 +9,9 @@ module LMSGraphQL
|
|
9
9
|
argument :start_date, LMSGraphQL::Types::DateTimeType, required: false
|
10
10
|
argument :end_date, LMSGraphQL::Types::DateTimeType, required: false
|
11
11
|
argument :context_codes, [String], required: false
|
12
|
+
argument :observed_user_id, ID, required: false
|
12
13
|
argument :filter, String, required: false
|
13
|
-
def resolve(user_id:, start_date: nil, end_date: nil, context_codes: nil, filter: nil, get_all: false)
|
14
|
+
def resolve(user_id:, start_date: nil, end_date: nil, context_codes: nil, observed_user_id: nil, filter: nil, get_all: false)
|
14
15
|
result = context[:canvas_api].call("LIST_PLANNER_ITEMS_USERS").proxy(
|
15
16
|
"LIST_PLANNER_ITEMS_USERS",
|
16
17
|
{
|
@@ -18,6 +19,7 @@ module LMSGraphQL
|
|
18
19
|
"start_date": start_date,
|
19
20
|
"end_date": end_date,
|
20
21
|
"context_codes": context_codes,
|
22
|
+
"observed_user_id": observed_user_id,
|
21
23
|
"filter": filter },
|
22
24
|
nil,
|
23
25
|
get_all,
|
@@ -5,7 +5,7 @@ module LMSGraphQL
|
|
5
5
|
module Types
|
6
6
|
module Canvas
|
7
7
|
class CanvasAccountNotificationInput < BaseInputObject
|
8
|
-
class
|
8
|
+
class AccountNotificationInputIconEnum < ::GraphQL::Schema::Enum
|
9
9
|
value "warning"
|
10
10
|
value "information"
|
11
11
|
value "question"
|
@@ -17,7 +17,7 @@ module LMSGraphQL
|
|
17
17
|
argument :message, String, "The message to be sent in the notification..Example: This is a test of the notification system.", required: false
|
18
18
|
argument :start_at, LMSGraphQL::Types::DateTimeType, "When to send out the notification..Example: 2013-08-28T23:59:00-06:00", required: false
|
19
19
|
argument :end_at, LMSGraphQL::Types::DateTimeType, "When to expire the notification..Example: 2013-08-29T23:59:00-06:00", required: false
|
20
|
-
argument :icon,
|
20
|
+
argument :icon, AccountNotificationInputIconEnum, "The icon to display with the message. Defaults to warning..Example: information", required: false
|
21
21
|
argument :roles, [String], "(Deprecated) The roles to send the notification to. If roles is not passed it defaults to all roles.Example: StudentEnrollment", required: false
|
22
22
|
argument :role_ids, [ID], "The roles to send the notification to. If roles is not passed it defaults to all roles.Example: 1", required: false
|
23
23
|
|
@@ -7,18 +7,18 @@ module LMSGraphQL
|
|
7
7
|
module Types
|
8
8
|
module Canvas
|
9
9
|
class CanvasAppointmentGroupInput < BaseInputObject
|
10
|
-
class
|
10
|
+
class AppointmentGroupInputWorkflowStateEnum < ::GraphQL::Schema::Enum
|
11
11
|
value "pending"
|
12
12
|
value "active"
|
13
13
|
value "deleted"
|
14
14
|
end
|
15
15
|
|
16
|
-
class
|
16
|
+
class AppointmentGroupInputParticipantVisibilityEnum < ::GraphQL::Schema::Enum
|
17
17
|
value "private"
|
18
18
|
value "protected"
|
19
19
|
end
|
20
20
|
|
21
|
-
class
|
21
|
+
class AppointmentGroupInputParticipantTypeEnum < ::GraphQL::Schema::Enum
|
22
22
|
value "User"
|
23
23
|
value "Group"
|
24
24
|
end
|
@@ -34,7 +34,7 @@ module LMSGraphQL
|
|
34
34
|
argument :reserved_times, [LMSGraphQL::Types::Canvas::CanvasAppointmentInput], "The start and end times of slots reserved by the current user as well as the id of the calendar event for the reservation (see include[] argument).Example: {'id'=>987, 'start_at'=>'2012-07-20T15:00:00-06:00', 'end_at'=>'2012-07-20T15:00:00-06:00'}", required: false
|
35
35
|
argument :context_codes, [String], "The context codes (i.e. courses) this appointment group belongs to. Only people in these courses will be eligible to sign up..Example: course_123", required: false
|
36
36
|
argument :sub_context_codes, [Int], "The sub-context codes (i.e. course sections and group categories) this appointment group is restricted to.Example: course_section_234", required: false
|
37
|
-
argument :workflow_state,
|
37
|
+
argument :workflow_state, AppointmentGroupInputWorkflowStateEnum, "Current state of the appointment group ('pending', 'active' or 'deleted'). 'pending' indicates that it has not been published yet and is invisible to participants..Example: active", required: false
|
38
38
|
argument :requiring_action, Boolean, "Boolean indicating whether the current user needs to sign up for this appointment group (i.e. it's reservable and the min_appointments_per_participant limit has not been met by this user)..Example: true", required: false
|
39
39
|
argument :appointments_count, Int, "Number of time slots in this appointment group.Example: 2", required: false
|
40
40
|
argument :appointments, [LMSGraphQL::Types::Canvas::CanvasCalendarEventInput], "Calendar Events representing the time slots (see include[] argument) Refer to the Calendar Events API for more information.", required: false
|
@@ -42,8 +42,8 @@ module LMSGraphQL
|
|
42
42
|
argument :max_appointments_per_participant, Int, "Maximum number of time slots a user may register for, or null if no limit.Example: 1", required: false
|
43
43
|
argument :min_appointments_per_participant, Int, "Minimum number of time slots a user must register for. If not set, users do not need to sign up for any time slots.Example: 1", required: false
|
44
44
|
argument :participants_per_appointment, Int, "Maximum number of participants that may register for each time slot, or null if no limit.Example: 1", required: false
|
45
|
-
argument :participant_visibility,
|
46
|
-
argument :participant_type,
|
45
|
+
argument :participant_visibility, AppointmentGroupInputParticipantVisibilityEnum, "'private' means participants cannot see who has signed up for a particular time slot, 'protected' means that they can.Example: private", required: false
|
46
|
+
argument :participant_type, AppointmentGroupInputParticipantTypeEnum, "Indicates how participants sign up for the appointment group, either as individuals ('User') or in student groups ('Group'). Related to sub_context_codes (i.e. 'Group' signups always have a single group category).Example: User", required: false
|
47
47
|
argument :url, String, "URL for this appointment group (to update, delete, etc.).Example: https://example.com/api/v1/appointment_groups/543", required: false
|
48
48
|
argument :html_url, String, "URL for a user to view this appointment group.Example: http://example.com/appointment_groups/1", required: false
|
49
49
|
argument :created_at, LMSGraphQL::Types::DateTimeType, "When the appointment group was created.Example: 2012-07-13T10:55:20-06:00", required: false
|
@@ -105,6 +105,7 @@ module LMSGraphQL
|
|
105
105
|
field :post_manually, Boolean, "Whether the assignment has manual posting enabled. Only relevant for courses using New Gradebook..Example: true", null: true
|
106
106
|
field :score_statistics, LMSGraphQL::Types::Canvas::CanvasScoreStatistic, "(Optional) If 'score_statistics' and 'submission' are included in the 'include' parameter and statistics are available, includes the min, max, and mode for this assignment.", null: true
|
107
107
|
field :can_submit, Boolean, "(Optional) If retrieving a single assignment and 'can_submit' is included in the 'include' parameter, flags whether user has the right to submit the assignment (i.e. checks enrollment dates, submission types, locked status, attempts remaining, etc...). Including 'can submit' automatically includes 'submission' in the include parameter. Not available when observed_users are included..Example: true", null: true
|
108
|
+
field :annotatable_attachment_id, ID, "The id of the attachment to be annotated by students. Relevant only if submission_types includes 'student_annotation'..", null: true
|
108
109
|
|
109
110
|
end
|
110
111
|
end
|
@@ -6,7 +6,7 @@ module LMSGraphQL
|
|
6
6
|
module Types
|
7
7
|
module Canvas
|
8
8
|
class CanvasAssignmentEventInput < BaseInputObject
|
9
|
-
class
|
9
|
+
class AssignmentEventInputWorkflowStateEnum < ::GraphQL::Schema::Enum
|
10
10
|
value "published"
|
11
11
|
value "deleted"
|
12
12
|
end
|
@@ -17,7 +17,7 @@ module LMSGraphQL
|
|
17
17
|
argument :end_at, LMSGraphQL::Types::DateTimeType, "The due_at timestamp of the assignment.Example: 2012-07-19T23:59:00-06:00", required: false
|
18
18
|
argument :description, String, "The HTML description of the assignment.Example: <b>Write an essay. Whatever you want.</b>", required: false
|
19
19
|
argument :context_code, String, "the context code of the (course) calendar this assignment belongs to.Example: course_123", required: false
|
20
|
-
argument :workflow_state,
|
20
|
+
argument :workflow_state, AssignmentEventInputWorkflowStateEnum, "Current state of the assignment ('published' or 'deleted').Example: published", required: false
|
21
21
|
argument :url, String, "URL for this assignment (note that updating/deleting should be done via the Assignments API).Example: https://example.com/api/v1/calendar_events/assignment_987", required: false
|
22
22
|
argument :html_url, String, "URL for a user to view this assignment.Example: http://example.com/courses/123/assignments/987", required: false
|
23
23
|
argument :all_day_date, LMSGraphQL::Types::DateTimeType, "The due date of this assignment.Example: 2012-07-19", required: false
|
@@ -14,7 +14,7 @@ module LMSGraphQL
|
|
14
14
|
module Types
|
15
15
|
module Canvas
|
16
16
|
class CanvasAssignmentInput < BaseInputObject
|
17
|
-
class
|
17
|
+
class AssignmentInputSubmissionTypeEnum < ::GraphQL::Schema::Enum
|
18
18
|
value "discussion_topic"
|
19
19
|
value "online_quiz"
|
20
20
|
value "on_paper"
|
@@ -28,7 +28,7 @@ module LMSGraphQL
|
|
28
28
|
value "student_annotation"
|
29
29
|
end
|
30
30
|
|
31
|
-
class
|
31
|
+
class AssignmentInputGradingTypeEnum < ::GraphQL::Schema::Enum
|
32
32
|
value "pass_fail"
|
33
33
|
value "percent"
|
34
34
|
value "letter_grade"
|
@@ -71,9 +71,9 @@ module LMSGraphQL
|
|
71
71
|
argument :integration_id, ID, "(optional, Third Party unique identifier for Assignment).Example: 12341234", required: false
|
72
72
|
argument :integration_data, String, "(optional, Third Party integration data for assignment).Example: 0954", required: false
|
73
73
|
argument :points_possible, Float, "the maximum points possible for the assignment.Example: 12.0", required: false
|
74
|
-
argument :submission_types,
|
74
|
+
argument :submission_types, AssignmentInputSubmissionTypeEnum, "the types of submissions allowed for this assignment list containing one or more of the following: 'discussion_topic', 'online_quiz', 'on_paper', 'none', 'external_tool', 'online_text_entry', 'online_url', 'online_upload', 'media_recording', 'student_annotation'.Example: online_text_entry", required: false
|
75
75
|
argument :has_submitted_submissions, Boolean, "If true, the assignment has been submitted to by at least one student.Example: true", required: false
|
76
|
-
argument :grading_type,
|
76
|
+
argument :grading_type, AssignmentInputGradingTypeEnum, "The type of grading the assignment receives; one of 'pass_fail', 'percent', 'letter_grade', 'gpa_scale', 'points'.Example: points", required: false
|
77
77
|
argument :grading_standard_id, ID, "The id of the grading standard being applied to this assignment. Valid if grading_type is 'letter_grade' or 'gpa_scale'..", required: false
|
78
78
|
argument :published, Boolean, "Whether the assignment is published.Example: true", required: false
|
79
79
|
argument :unpublishable, Boolean, "Whether the assignment's 'published' state can be changed to false. Will be false if there are student submissions for the assignment..", required: false
|
@@ -105,6 +105,7 @@ module LMSGraphQL
|
|
105
105
|
argument :post_manually, Boolean, "Whether the assignment has manual posting enabled. Only relevant for courses using New Gradebook..Example: true", required: false
|
106
106
|
argument :score_statistics, LMSGraphQL::Types::Canvas::CanvasScoreStatisticInput, "(Optional) If 'score_statistics' and 'submission' are included in the 'include' parameter and statistics are available, includes the min, max, and mode for this assignment.", required: false
|
107
107
|
argument :can_submit, Boolean, "(Optional) If retrieving a single assignment and 'can_submit' is included in the 'include' parameter, flags whether user has the right to submit the assignment (i.e. checks enrollment dates, submission types, locked status, attempts remaining, etc...). Including 'can submit' automatically includes 'submission' in the include parameter. Not available when observed_users are included..Example: true", required: false
|
108
|
+
argument :annotatable_attachment_id, ID, "The id of the attachment to be annotated by students. Relevant only if submission_types includes 'student_annotation'..", required: false
|
108
109
|
|
109
110
|
end
|
110
111
|
end
|
@@ -5,13 +5,13 @@ module LMSGraphQL
|
|
5
5
|
module Types
|
6
6
|
module Canvas
|
7
7
|
class CanvasAuthenticationEventInput < BaseInputObject
|
8
|
-
class
|
8
|
+
class AuthenticationEventInputEventTypeEnum < ::GraphQL::Schema::Enum
|
9
9
|
value "login"
|
10
10
|
value "logout"
|
11
11
|
end
|
12
12
|
description "Authentications Log. API Docs: https://canvas.instructure.com/doc/api/authentications_log.html"
|
13
13
|
argument :created_at, LMSGraphQL::Types::DateTimeType, "timestamp of the event.Example: 2012-07-19T15:00:00-06:00", required: false
|
14
|
-
argument :event_type,
|
14
|
+
argument :event_type, AuthenticationEventInputEventTypeEnum, "authentication event type ('login' or 'logout').Example: login", required: false
|
15
15
|
argument :pseudonym_id, ID, "ID of the pseudonym (login) associated with the event.Example: 9478", required: false
|
16
16
|
argument :account_id, ID, "ID of the account associated with the event. will match the account_id in the associated pseudonym..Example: 2319", required: false
|
17
17
|
argument :user_id, ID, "ID of the user associated with the event will match the user_id in the associated pseudonym..Example: 362", required: false
|
@@ -12,7 +12,7 @@ module LMSGraphQL
|
|
12
12
|
field :change_type, String, "The type of change; one of 'created', 'updated', 'deleted'.Example: created", null: true
|
13
13
|
field :html_url, String, "The URL of the changed object.Example: https://canvas.example.com/courses/101/assignments/2", null: true
|
14
14
|
field :locked, Boolean, "Whether the object is locked in the blueprint.", null: true
|
15
|
-
field :exceptions, String, "A list of ExceptionRecords for linked courses that did not receive this update..Example: {'course_id'=>101, 'conflicting_changes'=>['points']}", null: true
|
15
|
+
field :exceptions, [String], "A list of ExceptionRecords for linked courses that did not receive this update..Example: {'course_id'=>101, 'conflicting_changes'=>['points']}", null: true
|
16
16
|
|
17
17
|
end
|
18
18
|
end
|
@@ -12,7 +12,7 @@ module LMSGraphQL
|
|
12
12
|
argument :change_type, String, "The type of change; one of 'created', 'updated', 'deleted'.Example: created", required: false
|
13
13
|
argument :html_url, String, "The URL of the changed object.Example: https://canvas.example.com/courses/101/assignments/2", required: false
|
14
14
|
argument :locked, Boolean, "Whether the object is locked in the blueprint.", required: false
|
15
|
-
argument :exceptions, String, "A list of ExceptionRecords for linked courses that did not receive this update..Example: {'course_id'=>101, 'conflicting_changes'=>['points']}", required: false
|
15
|
+
argument :exceptions, [String], "A list of ExceptionRecords for linked courses that did not receive this update..Example: {'course_id'=>101, 'conflicting_changes'=>['points']}", required: false
|
16
16
|
|
17
17
|
end
|
18
18
|
end
|
@@ -5,13 +5,13 @@ module LMSGraphQL
|
|
5
5
|
module Types
|
6
6
|
module Canvas
|
7
7
|
class CanvasCollaboratorInput < BaseInputObject
|
8
|
-
class
|
8
|
+
class CollaboratorInputTypeEnum < ::GraphQL::Schema::Enum
|
9
9
|
value "user"
|
10
10
|
value "group"
|
11
11
|
end
|
12
12
|
description "Collaborations. API Docs: https://canvas.instructure.com/doc/api/collaborations.html"
|
13
13
|
argument :id, ID, "The unique user or group identifier for the collaborator..Example: 12345", required: false
|
14
|
-
argument :type,
|
14
|
+
argument :type, CollaboratorInputTypeEnum, "The type of collaborator (e.g. 'user' or 'group')..Example: user", required: false
|
15
15
|
argument :name, String, "The name of the collaborator..Example: Don Draper", required: false
|
16
16
|
|
17
17
|
end
|
@@ -5,7 +5,7 @@ module LMSGraphQL
|
|
5
5
|
module Types
|
6
6
|
module Canvas
|
7
7
|
class CanvasCommMessageInput < BaseInputObject
|
8
|
-
class
|
8
|
+
class CommMessageInputWorkflowStateEnum < ::GraphQL::Schema::Enum
|
9
9
|
value "created"
|
10
10
|
value "staged"
|
11
11
|
value "sending"
|
@@ -19,7 +19,7 @@ module LMSGraphQL
|
|
19
19
|
argument :id, ID, "The ID of the CommMessage..Example: 42", required: false
|
20
20
|
argument :created_at, LMSGraphQL::Types::DateTimeType, "The date and time this message was created.Example: 2013-03-19T21:00:00Z", required: false
|
21
21
|
argument :sent_at, LMSGraphQL::Types::DateTimeType, "The date and time this message was sent.Example: 2013-03-20T22:42:00Z", required: false
|
22
|
-
argument :workflow_state,
|
22
|
+
argument :workflow_state, CommMessageInputWorkflowStateEnum, "The workflow state of the message. One of 'created', 'staged', 'sending', 'sent', 'bounced', 'dashboard', 'cancelled', or 'closed'.Example: sent", required: false
|
23
23
|
argument :from, String, "The address that was put in the 'from' field of the message.Example: notifications@example.com", required: false
|
24
24
|
argument :from_name, String, "The display name for the from address.Example: Instructure Canvas", required: false
|
25
25
|
argument :to, String, "The address the message was sent to:.Example: someone@example.com", required: false
|
@@ -5,24 +5,24 @@ module LMSGraphQL
|
|
5
5
|
module Types
|
6
6
|
module Canvas
|
7
7
|
class CanvasCommunicationChannelInput < BaseInputObject
|
8
|
-
class
|
8
|
+
class CommunicationChannelInputTypeEnum < ::GraphQL::Schema::Enum
|
9
9
|
value "email"
|
10
10
|
value "push"
|
11
11
|
value "sms"
|
12
12
|
value "twitter"
|
13
13
|
end
|
14
14
|
|
15
|
-
class
|
15
|
+
class CommunicationChannelInputWorkflowStateEnum < ::GraphQL::Schema::Enum
|
16
16
|
value "unconfirmed"
|
17
17
|
value "active"
|
18
18
|
end
|
19
19
|
description "Communication Channels. API Docs: https://canvas.instructure.com/doc/api/communication_channels.html"
|
20
20
|
argument :id, ID, "The ID of the communication channel..Example: 16", required: false
|
21
21
|
argument :address, String, "The address, or path, of the communication channel..Example: sheldon@caltech.example.com", required: false
|
22
|
-
argument :type,
|
22
|
+
argument :type, CommunicationChannelInputTypeEnum, "The type of communcation channel being described. Possible values are: 'email', 'push', 'sms', or 'twitter'. This field determines the type of value seen in 'address'..Example: email", required: false
|
23
23
|
argument :position, Int, "The position of this communication channel relative to the user's other channels when they are ordered..Example: 1", required: false
|
24
24
|
argument :user_id, ID, "The ID of the user that owns this communication channel..Example: 1", required: false
|
25
|
-
argument :workflow_state,
|
25
|
+
argument :workflow_state, CommunicationChannelInputWorkflowStateEnum, "The current state of the communication channel. Possible values are: 'unconfirmed' or 'active'..Example: active", required: false
|
26
26
|
|
27
27
|
end
|
28
28
|
end
|
@@ -5,7 +5,7 @@ module LMSGraphQL
|
|
5
5
|
module Types
|
6
6
|
module Canvas
|
7
7
|
class CanvasCompletionRequirementInput < BaseInputObject
|
8
|
-
class
|
8
|
+
class CompletionRequirementInputTypeEnum < ::GraphQL::Schema::Enum
|
9
9
|
value "must_view"
|
10
10
|
value "must_submit"
|
11
11
|
value "must_contribute"
|
@@ -13,7 +13,7 @@ module LMSGraphQL
|
|
13
13
|
value "must_mark_done"
|
14
14
|
end
|
15
15
|
description "Modules. API Docs: https://canvas.instructure.com/doc/api/modules.html"
|
16
|
-
argument :type,
|
16
|
+
argument :type, CompletionRequirementInputTypeEnum, "one of 'must_view', 'must_submit', 'must_contribute', 'min_score', 'must_mark_done'.Example: min_score", required: false
|
17
17
|
argument :min_score, Int, "minimum score required to complete (only present when type == 'min_score').Example: 10", required: false
|
18
18
|
argument :completed, Boolean, "whether the calling user has met this requirement (Optional; present only if the caller is a student or if the optional parameter 'student_id' is included).Example: true", required: false
|
19
19
|
|
@@ -5,12 +5,12 @@ module LMSGraphQL
|
|
5
5
|
module Types
|
6
6
|
module Canvas
|
7
7
|
class CanvasContentExportInput < BaseInputObject
|
8
|
-
class
|
8
|
+
class ContentExportInputExportTypeEnum < ::GraphQL::Schema::Enum
|
9
9
|
value "common_cartridge"
|
10
10
|
value "qti"
|
11
11
|
end
|
12
12
|
|
13
|
-
class
|
13
|
+
class ContentExportInputWorkflowStateEnum < ::GraphQL::Schema::Enum
|
14
14
|
value "created"
|
15
15
|
value "exporting"
|
16
16
|
value "exported"
|
@@ -19,11 +19,11 @@ module LMSGraphQL
|
|
19
19
|
description "Content Exports. API Docs: https://canvas.instructure.com/doc/api/content_exports.html"
|
20
20
|
argument :id, ID, "the unique identifier for the export.Example: 101", required: false
|
21
21
|
argument :created_at, LMSGraphQL::Types::DateTimeType, "the date and time this export was requested.Example: 2014-01-01T00:00:00Z", required: false
|
22
|
-
argument :export_type,
|
22
|
+
argument :export_type, ContentExportInputExportTypeEnum, "the type of content migration: 'common_cartridge' or 'qti'.Example: common_cartridge", required: false
|
23
23
|
argument :attachment, LMSGraphQL::Types::Canvas::CanvasFileInput, "attachment api object for the export package (not present before the export completes or after it becomes unavailable for download.).Example: https://example.com/api/v1/attachments/789?download_frd=1&verifier=bG9sY2F0cyEh", required: false
|
24
24
|
argument :progress_url, String, "The api endpoint for polling the current progress.Example: https://example.com/api/v1/progress/4", required: false
|
25
25
|
argument :user_id, ID, "The ID of the user who started the export.Example: 4", required: false
|
26
|
-
argument :workflow_state,
|
26
|
+
argument :workflow_state, ContentExportInputWorkflowStateEnum, "Current state of the content migration: created exporting exported failed.Example: exported", required: false
|
27
27
|
|
28
28
|
end
|
29
29
|
end
|
@@ -5,7 +5,7 @@ module LMSGraphQL
|
|
5
5
|
module Types
|
6
6
|
module Canvas
|
7
7
|
class CanvasContentMigrationInput < BaseInputObject
|
8
|
-
class
|
8
|
+
class ContentMigrationInputWorkflowStateEnum < ::GraphQL::Schema::Enum
|
9
9
|
value "pre_processing"
|
10
10
|
value "pre_processed"
|
11
11
|
value "running"
|
@@ -21,7 +21,7 @@ module LMSGraphQL
|
|
21
21
|
argument :attachment, String, "attachment api object for the uploaded file may not be present for all migrations.Example: {'url'=>'https://example.com/api/v1/courses/1/content_migrations/1/download_archive'}", required: false
|
22
22
|
argument :progress_url, String, "The api endpoint for polling the current progress.Example: https://example.com/api/v1/progress/4", required: false
|
23
23
|
argument :user_id, ID, "The user who started the migration.Example: 4", required: false
|
24
|
-
argument :workflow_state,
|
24
|
+
argument :workflow_state, ContentMigrationInputWorkflowStateEnum, "Current state of the content migration: pre_processing, pre_processed, running, waiting_for_select, completed, failed.Example: running", required: false
|
25
25
|
argument :started_at, LMSGraphQL::Types::DateTimeType, "timestamp.Example: 2012-06-01T00:00:00-06:00", required: false
|
26
26
|
argument :finished_at, LMSGraphQL::Types::DateTimeType, "timestamp.Example: 2012-06-01T00:00:00-06:00", required: false
|
27
27
|
argument :pre_attachment, String, "file uploading data, see {file:file_uploads.html File Upload Documentation} for file upload workflow This works a little differently in that all the file data is in the pre_attachment hash if there is no upload_url then there was an attachment pre-processing error, the error message will be in the message key This data will only be here after a create or update call.Example: {'upload_url'=>'', 'message'=>'file exceeded quota', 'upload_params'=>{}}", required: false
|
@@ -13,7 +13,7 @@ module LMSGraphQL
|
|
13
13
|
field :updated_at, LMSGraphQL::Types::DateTimeType, "The datetime the content was updated..Example: 2017-05-09T10:12:00Z", null: true
|
14
14
|
field :user_id, ID, "The id of the user who sent or received the content share..Example: 1578941", null: true
|
15
15
|
field :sender, String, "The user who shared the content. This field is provided only to receivers; it is not populated in the sender's list of sent content shares..Example: 1, Matilda Vargas, http://localhost:3000/image_url, http://localhost:3000/users/1", null: true
|
16
|
-
field :receivers, String, "An Array of users the content is shared with. This field is provided only to senders; an empty array will be returned for the receiving users..Example: {'id'=>1, 'display_name'=>'Jon Snow', 'avatar_image_url'=>'http://localhost:3000/image_url2', 'html_url'=>'http://localhost:3000/users/2'}", null: true
|
16
|
+
field :receivers, [String], "An Array of users the content is shared with. This field is provided only to senders; an empty array will be returned for the receiving users..Example: {'id'=>1, 'display_name'=>'Jon Snow', 'avatar_image_url'=>'http://localhost:3000/image_url2', 'html_url'=>'http://localhost:3000/users/2'}", null: true
|
17
17
|
field :source_course, String, "The course the content was originally shared from..Example: 787, History 105", null: true
|
18
18
|
field :read_state, String, "Whether the recipient has viewed the content share..Example: read", null: true
|
19
19
|
field :content_export, LMSGraphQL::Types::Canvas::CanvasContentExport, "The content export record associated with this content share.Example: 42", null: true
|
@@ -13,7 +13,7 @@ module LMSGraphQL
|
|
13
13
|
argument :updated_at, LMSGraphQL::Types::DateTimeType, "The datetime the content was updated..Example: 2017-05-09T10:12:00Z", required: false
|
14
14
|
argument :user_id, ID, "The id of the user who sent or received the content share..Example: 1578941", required: false
|
15
15
|
argument :sender, String, "The user who shared the content. This field is provided only to receivers; it is not populated in the sender's list of sent content shares..Example: 1, Matilda Vargas, http://localhost:3000/image_url, http://localhost:3000/users/1", required: false
|
16
|
-
argument :receivers, String, "An Array of users the content is shared with. This field is provided only to senders; an empty array will be returned for the receiving users..Example: {'id'=>1, 'display_name'=>'Jon Snow', 'avatar_image_url'=>'http://localhost:3000/image_url2', 'html_url'=>'http://localhost:3000/users/2'}", required: false
|
16
|
+
argument :receivers, [String], "An Array of users the content is shared with. This field is provided only to senders; an empty array will be returned for the receiving users..Example: {'id'=>1, 'display_name'=>'Jon Snow', 'avatar_image_url'=>'http://localhost:3000/image_url2', 'html_url'=>'http://localhost:3000/users/2'}", required: false
|
17
17
|
argument :source_course, String, "The course the content was originally shared from..Example: 787, History 105", required: false
|
18
18
|
argument :read_state, String, "Whether the recipient has viewed the content share..Example: read", required: false
|
19
19
|
argument :content_export, LMSGraphQL::Types::Canvas::CanvasContentExportInput, "The content export record associated with this content share.Example: 42", required: false
|
@@ -9,14 +9,14 @@ module LMSGraphQL
|
|
9
9
|
module Types
|
10
10
|
module Canvas
|
11
11
|
class CanvasCourseInput < BaseInputObject
|
12
|
-
class
|
12
|
+
class CourseInputWorkflowStateEnum < ::GraphQL::Schema::Enum
|
13
13
|
value "unpublished"
|
14
14
|
value "available"
|
15
15
|
value "completed"
|
16
16
|
value "deleted"
|
17
17
|
end
|
18
18
|
|
19
|
-
class
|
19
|
+
class CourseInputDefaultViewEnum < ::GraphQL::Schema::Enum
|
20
20
|
value "feed"
|
21
21
|
value "wiki"
|
22
22
|
value "modules"
|
@@ -31,7 +31,7 @@ module LMSGraphQL
|
|
31
31
|
argument :sis_import_id, ID, "the unique identifier for the SIS import. This field is only included if the user has permission to manage SIS information..Example: 34", required: false
|
32
32
|
argument :name, String, "the full name of the course.Example: InstructureCon 2012", required: false
|
33
33
|
argument :course_code, String, "the course code.Example: INSTCON12", required: false
|
34
|
-
argument :workflow_state,
|
34
|
+
argument :workflow_state, CourseInputWorkflowStateEnum, "the current state of the course one of 'unpublished', 'available', 'completed', or 'deleted'.Example: available", required: false
|
35
35
|
argument :account_id, ID, "the account associated with the course.Example: 81259", required: false
|
36
36
|
argument :root_account_id, ID, "the root account associated with the course.Example: 81259", required: false
|
37
37
|
argument :enrollment_term_id, ID, "the enrollment term associated with the course.Example: 34", required: false
|
@@ -45,7 +45,7 @@ module LMSGraphQL
|
|
45
45
|
argument :enrollments, [LMSGraphQL::Types::Canvas::CanvasEnrollmentInput], "A list of enrollments linking the current user to the course. for student enrollments, grading information may be included if include[]=total_scores.", required: false
|
46
46
|
argument :total_students, Int, "optional: the total number of active and invited students in the course.Example: 32", required: false
|
47
47
|
argument :calendar, LMSGraphQL::Types::Canvas::CanvasCalendarLinkInput, "course calendar.", required: false
|
48
|
-
argument :default_view,
|
48
|
+
argument :default_view, CourseInputDefaultViewEnum, "the type of page that users will see when they first visit the course - 'feed': Recent Activity Dashboard - 'wiki': Wiki Front Page - 'modules': Course Modules/Sections Page - 'assignments': Course Assignments List - 'syllabus': Course Syllabus Page other types may be added in the future.Example: feed", required: false
|
49
49
|
argument :syllabus_body, String, "optional: user-generated HTML for the course syllabus.Example: <p>syllabus html goes here</p>", required: false
|
50
50
|
argument :needs_grading_count, Int, "optional: the number of submissions needing grading returned only if the current user has grading rights and include[]=needs_grading_count.Example: 17", required: false
|
51
51
|
argument :term, LMSGraphQL::Types::Canvas::CanvasTermInput, "optional: the enrollment term object for the course returned only if include[]=term.", required: false
|
@@ -47,7 +47,7 @@ module LMSGraphQL
|
|
47
47
|
field :lock_explanation, String, "(Optional) An explanation of why this is locked for the user. Present when locked_for_user is true..Example: This discussion is locked until September 1 at 12:00am", null: true
|
48
48
|
field :user_name, String, "The username of the topic creator..Example: User Name", null: true
|
49
49
|
field :topic_children, [Int], "DEPRECATED An array of topic_ids for the group discussions the user is a part of..Example: 5, 7, 10", null: true
|
50
|
-
field :group_topic_children, String, "An array of group discussions the user is a part of. Fields include: id, group_id.Example: {'id'=>5, 'group_id'=>1}, {'id'=>7, 'group_id'=>5}, {'id'=>10, 'group_id'=>4}", null: true
|
50
|
+
field :group_topic_children, [String], "An array of group discussions the user is a part of. Fields include: id, group_id.Example: {'id'=>5, 'group_id'=>1}, {'id'=>7, 'group_id'=>5}, {'id'=>10, 'group_id'=>4}", null: true
|
51
51
|
field :root_topic_id, ID, "If the topic is for grading and a group assignment this will point to the original topic in the course..", null: true
|
52
52
|
field :podcast_url, String, "If the topic is a podcast topic this is the feed url for the current user..Example: /feeds/topics/1/enrollment_1XAcepje4u228rt4mi7Z1oFbRpn3RAkTzuXIGOPe.rss", null: true
|
53
53
|
field :discussion_type, DiscussionTopicDiscussionTypeEnum, "The type of discussion. Values are 'side_comment', for discussions that only allow one level of nested comments, and 'threaded' for fully threaded discussions..Example: side_comment", null: true
|
@@ -6,19 +6,19 @@ module LMSGraphQL
|
|
6
6
|
module Types
|
7
7
|
module Canvas
|
8
8
|
class CanvasDiscussionTopicInput < BaseInputObject
|
9
|
-
class
|
9
|
+
class DiscussionTopicInputReadStateEnum < ::GraphQL::Schema::Enum
|
10
10
|
value "read"
|
11
11
|
value "unread"
|
12
12
|
end
|
13
13
|
|
14
|
-
class
|
14
|
+
class DiscussionTopicInputSubscriptionHoldEnum < ::GraphQL::Schema::Enum
|
15
15
|
value "initial_post_required"
|
16
16
|
value "not_in_group_set"
|
17
17
|
value "not_in_group"
|
18
18
|
value "topic_is_announcement"
|
19
19
|
end
|
20
20
|
|
21
|
-
class
|
21
|
+
class DiscussionTopicInputDiscussionTypeEnum < ::GraphQL::Schema::Enum
|
22
22
|
value "side_comment"
|
23
23
|
value "threaded"
|
24
24
|
end
|
@@ -32,10 +32,10 @@ module LMSGraphQL
|
|
32
32
|
argument :require_initial_post, Boolean, "If true then a user may not respond to other replies until that user has made an initial reply. Defaults to false..", required: false
|
33
33
|
argument :user_can_see_posts, Boolean, "Whether or not posts in this topic are visible to the user..Example: true", required: false
|
34
34
|
argument :discussion_subentry_count, Int, "The count of entries in the topic..Example: 0", required: false
|
35
|
-
argument :read_state,
|
35
|
+
argument :read_state, DiscussionTopicInputReadStateEnum, "The read_state of the topic for the current user, 'read' or 'unread'..Example: read", required: false
|
36
36
|
argument :unread_count, Int, "The count of unread entries of this topic for the current user..Example: 0", required: false
|
37
37
|
argument :subscribed, Boolean, "Whether or not the current user is subscribed to this topic..Example: true", required: false
|
38
|
-
argument :subscription_hold,
|
38
|
+
argument :subscription_hold, DiscussionTopicInputSubscriptionHoldEnum, "(Optional) Why the user cannot subscribe to this topic. Only one reason will be returned even if multiple apply. Can be one of: 'initial_post_required': The user must post a reply first; 'not_in_group_set': The user is not in the group set for this graded group discussion; 'not_in_group': The user is not in this topic's group; 'topic_is_announcement': This topic is an announcement.Example: not_in_group_set", required: false
|
39
39
|
argument :assignment_id, ID, "The unique identifier of the assignment if the topic is for grading, otherwise null..", required: false
|
40
40
|
argument :delayed_post_at, LMSGraphQL::Types::DateTimeType, "The datetime to publish the topic (if not right away)..", required: false
|
41
41
|
argument :published, Boolean, "Whether this discussion topic is published (true) or draft state (false).Example: true", required: false
|
@@ -47,10 +47,10 @@ module LMSGraphQL
|
|
47
47
|
argument :lock_explanation, String, "(Optional) An explanation of why this is locked for the user. Present when locked_for_user is true..Example: This discussion is locked until September 1 at 12:00am", required: false
|
48
48
|
argument :user_name, String, "The username of the topic creator..Example: User Name", required: false
|
49
49
|
argument :topic_children, [Int], "DEPRECATED An array of topic_ids for the group discussions the user is a part of..Example: 5, 7, 10", required: false
|
50
|
-
argument :group_topic_children, String, "An array of group discussions the user is a part of. Fields include: id, group_id.Example: {'id'=>5, 'group_id'=>1}, {'id'=>7, 'group_id'=>5}, {'id'=>10, 'group_id'=>4}", required: false
|
50
|
+
argument :group_topic_children, [String], "An array of group discussions the user is a part of. Fields include: id, group_id.Example: {'id'=>5, 'group_id'=>1}, {'id'=>7, 'group_id'=>5}, {'id'=>10, 'group_id'=>4}", required: false
|
51
51
|
argument :root_topic_id, ID, "If the topic is for grading and a group assignment this will point to the original topic in the course..", required: false
|
52
52
|
argument :podcast_url, String, "If the topic is a podcast topic this is the feed url for the current user..Example: /feeds/topics/1/enrollment_1XAcepje4u228rt4mi7Z1oFbRpn3RAkTzuXIGOPe.rss", required: false
|
53
|
-
argument :discussion_type,
|
53
|
+
argument :discussion_type, DiscussionTopicInputDiscussionTypeEnum, "The type of discussion. Values are 'side_comment', for discussions that only allow one level of nested comments, and 'threaded' for fully threaded discussions..Example: side_comment", required: false
|
54
54
|
argument :group_category_id, ID, "The unique identifier of the group category if the topic is a group discussion, otherwise null..", required: false
|
55
55
|
argument :attachments, [LMSGraphQL::Types::Canvas::CanvasFileAttachmentInput], "Array of file attachments..", required: false
|
56
56
|
argument :permissions, String, "The current user's permissions on this topic..Example: true", required: false
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require_relative "../canvas_base_type"
|
2
|
+
|
3
|
+
|
4
|
+
module LMSGraphQL
|
5
|
+
module Types
|
6
|
+
module Canvas
|
7
|
+
class CanvasePortfolio < BaseType
|
8
|
+
description "ePortfolios. API Docs: https://canvas.instructure.com/doc/api/e_portfolios.html"
|
9
|
+
field :id, ID, "The database ID of the ePortfolio.Example: 1", null: true
|
10
|
+
field :user_id, ID, "The user ID to which the ePortfolio belongs.Example: 1", null: true
|
11
|
+
field :name, String, "The name of the ePortfolio.Example: My Academic Journey", null: true
|
12
|
+
field :public, Boolean, "Whether or not the ePortfolio is visible without authentication.Example: true", null: true
|
13
|
+
field :created_at, LMSGraphQL::Types::DateTimeType, "The creation timestamp for the ePortfolio.Example: 2021-09-20T18:59:37Z", null: true
|
14
|
+
field :updated_at, LMSGraphQL::Types::DateTimeType, "The timestamp of the last time any of the ePortfolio attributes changed.Example: 2021-09-20T18:59:37Z", null: true
|
15
|
+
field :workflow_state, String, "The state of the ePortfolio. Either 'active' or 'deleted'.Example: active", null: true
|
16
|
+
field :deleted_at, LMSGraphQL::Types::DateTimeType, "The timestamp when the ePortfolio was deleted, or else null.Example: 2021-09-20T18:59:37Z", null: true
|
17
|
+
field :spam_status, String, "A flag indicating whether the ePortfolio has been
|
18
|
+
flagged or moderated as spam. One of 'flagged_as_possible_spam',
|
19
|
+
'marked_as_safe', 'marked_as_spam', or null.", null: true
|
20
|
+
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require_relative "../canvas_base_input_type"
|
2
|
+
|
3
|
+
|
4
|
+
module LMSGraphQL
|
5
|
+
module Types
|
6
|
+
module Canvas
|
7
|
+
class CanvasePortfolioInput < BaseInputObject
|
8
|
+
description "ePortfolios. API Docs: https://canvas.instructure.com/doc/api/e_portfolios.html"
|
9
|
+
argument :id, ID, "The database ID of the ePortfolio.Example: 1", required: false
|
10
|
+
argument :user_id, ID, "The user ID to which the ePortfolio belongs.Example: 1", required: false
|
11
|
+
argument :name, String, "The name of the ePortfolio.Example: My Academic Journey", required: false
|
12
|
+
argument :public, Boolean, "Whether or not the ePortfolio is visible without authentication.Example: true", required: false
|
13
|
+
argument :created_at, LMSGraphQL::Types::DateTimeType, "The creation timestamp for the ePortfolio.Example: 2021-09-20T18:59:37Z", required: false
|
14
|
+
argument :updated_at, LMSGraphQL::Types::DateTimeType, "The timestamp of the last time any of the ePortfolio attributes changed.Example: 2021-09-20T18:59:37Z", required: false
|
15
|
+
argument :workflow_state, String, "The state of the ePortfolio. Either 'active' or 'deleted'.Example: active", required: false
|
16
|
+
argument :deleted_at, LMSGraphQL::Types::DateTimeType, "The timestamp when the ePortfolio was deleted, or else null.Example: 2021-09-20T18:59:37Z", required: false
|
17
|
+
argument :spam_status, String, "A flag indicating whether the ePortfolio has been
|
18
|
+
flagged or moderated as spam. One of 'flagged_as_possible_spam',
|
19
|
+
'marked_as_safe', 'marked_as_spam', or null.", required: false
|
20
|
+
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require_relative "../canvas_base_type"
|
2
|
+
|
3
|
+
|
4
|
+
module LMSGraphQL
|
5
|
+
module Types
|
6
|
+
module Canvas
|
7
|
+
class CanvasePortfolioPage < BaseType
|
8
|
+
description "ePortfolios. API Docs: https://canvas.instructure.com/doc/api/e_portfolios.html"
|
9
|
+
field :id, ID, "The database ID of the ePortfolio.Example: 1", null: true
|
10
|
+
field :eportfolio_id, ID, "The ePortfolio ID to which the entry belongs.Example: 1", null: true
|
11
|
+
field :position, Int, "The positional order of the entry in the list.Example: 1", null: true
|
12
|
+
field :name, String, "The name of the ePortfolio.Example: My Academic Journey", null: true
|
13
|
+
field :content, String, "The user entered content of the entry.Example: A long time ago.", null: true
|
14
|
+
field :created_at, LMSGraphQL::Types::DateTimeType, "The creation timestamp for the ePortfolio.Example: 2021-09-20T18:59:37Z", null: true
|
15
|
+
field :updated_at, LMSGraphQL::Types::DateTimeType, "The timestamp of the last time any of the ePortfolio attributes changed.Example: 2021-09-20T18:59:37Z", null: true
|
16
|
+
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require_relative "../canvas_base_input_type"
|
2
|
+
|
3
|
+
|
4
|
+
module LMSGraphQL
|
5
|
+
module Types
|
6
|
+
module Canvas
|
7
|
+
class CanvasePortfolioPageInput < BaseInputObject
|
8
|
+
description "ePortfolios. API Docs: https://canvas.instructure.com/doc/api/e_portfolios.html"
|
9
|
+
argument :id, ID, "The database ID of the ePortfolio.Example: 1", required: false
|
10
|
+
argument :eportfolio_id, ID, "The ePortfolio ID to which the entry belongs.Example: 1", required: false
|
11
|
+
argument :position, Int, "The positional order of the entry in the list.Example: 1", required: false
|
12
|
+
argument :name, String, "The name of the ePortfolio.Example: My Academic Journey", required: false
|
13
|
+
argument :content, String, "The user entered content of the entry.Example: A long time ago.", required: false
|
14
|
+
argument :created_at, LMSGraphQL::Types::DateTimeType, "The creation timestamp for the ePortfolio.Example: 2021-09-20T18:59:37Z", required: false
|
15
|
+
argument :updated_at, LMSGraphQL::Types::DateTimeType, "The timestamp of the last time any of the ePortfolio attributes changed.Example: 2021-09-20T18:59:37Z", required: false
|
16
|
+
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -5,7 +5,7 @@ module LMSGraphQL
|
|
5
5
|
module Types
|
6
6
|
module Canvas
|
7
7
|
class CanvasEpubExportInput < BaseInputObject
|
8
|
-
class
|
8
|
+
class EpubExportInputWorkflowStateEnum < ::GraphQL::Schema::Enum
|
9
9
|
value "created"
|
10
10
|
value "exporting"
|
11
11
|
value "exported"
|
@@ -19,7 +19,7 @@ module LMSGraphQL
|
|
19
19
|
argument :attachment, LMSGraphQL::Types::Canvas::CanvasFileInput, "attachment api object for the export ePub (not present until the export completes).Example: https://example.com/api/v1/attachments/789?download_frd=1&verifier=bG9sY2F0cyEh", required: false
|
20
20
|
argument :progress_url, String, "The api endpoint for polling the current progress.Example: https://example.com/api/v1/progress/4", required: false
|
21
21
|
argument :user_id, ID, "The ID of the user who started the export.Example: 4", required: false
|
22
|
-
argument :workflow_state,
|
22
|
+
argument :workflow_state, EpubExportInputWorkflowStateEnum, "Current state of the ePub export: created exporting exported generating generated failed.Example: exported", required: false
|
23
23
|
|
24
24
|
end
|
25
25
|
end
|
@@ -7,7 +7,7 @@ module LMSGraphQL
|
|
7
7
|
class CanvasExceptionRecord < BaseType
|
8
8
|
description "Blueprint Courses. API Docs: https://canvas.instructure.com/doc/api/blueprint_courses.html"
|
9
9
|
field :course_id, ID, "The ID of the associated course.Example: 101", null: true
|
10
|
-
field :conflicting_changes, String, "A list of change classes in the associated course's copy of the item that prevented a blueprint change from being applied. One or more of ['content', 'points', 'due_dates', 'availability_dates']..Example: points", null: true
|
10
|
+
field :conflicting_changes, [String], "A list of change classes in the associated course's copy of the item that prevented a blueprint change from being applied. One or more of ['content', 'points', 'due_dates', 'availability_dates']..Example: points", null: true
|
11
11
|
|
12
12
|
end
|
13
13
|
end
|
@@ -7,7 +7,7 @@ module LMSGraphQL
|
|
7
7
|
class CanvasExceptionRecordInput < BaseInputObject
|
8
8
|
description "Blueprint Courses. API Docs: https://canvas.instructure.com/doc/api/blueprint_courses.html"
|
9
9
|
argument :course_id, ID, "The ID of the associated course.Example: 101", required: false
|
10
|
-
argument :conflicting_changes, String, "A list of change classes in the associated course's copy of the item that prevented a blueprint change from being applied. One or more of ['content', 'points', 'due_dates', 'availability_dates']..Example: points", required: false
|
10
|
+
argument :conflicting_changes, [String], "A list of change classes in the associated course's copy of the item that prevented a blueprint change from being applied. One or more of ['content', 'points', 'due_dates', 'availability_dates']..Example: points", required: false
|
11
11
|
|
12
12
|
end
|
13
13
|
end
|