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.
Files changed (110) hide show
  1. checksums.yaml +4 -4
  2. data/lib/lms_graphql/mutations/canvas/add_multiple_allowed_domains_to_account.rb +1 -1
  3. data/lib/lms_graphql/mutations/canvas/add_users_to_content_share.rb +1 -1
  4. data/lib/lms_graphql/mutations/canvas/create_content_share.rb +1 -1
  5. data/lib/lms_graphql/mutations/canvas/create_instaccess_token.rb +22 -0
  6. data/lib/lms_graphql/mutations/canvas/create_jwt.rb +5 -3
  7. data/lib/lms_graphql/mutations/canvas/create_user_login.rb +4 -2
  8. data/lib/lms_graphql/mutations/canvas/create_webhook_subscription.rb +1 -1
  9. data/lib/lms_graphql/mutations/canvas/delete_eportfolio.rb +24 -0
  10. data/lib/lms_graphql/mutations/canvas/edit_user.rb +4 -2
  11. data/lib/lms_graphql/mutations/canvas/edit_user_login.rb +6 -2
  12. data/lib/lms_graphql/mutations/canvas/grade_or_comment_on_multiple_submissions_courses_assignments.rb +3 -3
  13. data/lib/lms_graphql/mutations/canvas/grade_or_comment_on_multiple_submissions_courses_submissions.rb +3 -3
  14. data/lib/lms_graphql/mutations/canvas/grade_or_comment_on_multiple_submissions_sections_assignments.rb +3 -3
  15. data/lib/lms_graphql/mutations/canvas/grade_or_comment_on_multiple_submissions_sections_submissions.rb +3 -3
  16. data/lib/lms_graphql/mutations/canvas/grade_or_comment_on_submission_by_anonymous_id_courses.rb +51 -0
  17. data/lib/lms_graphql/mutations/canvas/grade_or_comment_on_submission_by_anonymous_id_sections.rb +51 -0
  18. data/lib/lms_graphql/mutations/canvas/mark_document_annotations_as_read_courses.rb +28 -0
  19. data/lib/lms_graphql/mutations/canvas/mark_document_annotations_as_read_sections.rb +28 -0
  20. data/lib/lms_graphql/mutations/canvas/mark_rubric_comments_as_read_courses.rb +28 -0
  21. data/lib/lms_graphql/mutations/canvas/mark_rubric_comments_as_read_sections.rb +28 -0
  22. data/lib/lms_graphql/mutations/canvas/moderate_all_eportfolios_for_user.rb +27 -0
  23. data/lib/lms_graphql/mutations/canvas/moderate_eportfolio.rb +27 -0
  24. data/lib/lms_graphql/mutations/canvas/mutations.rb +19 -8
  25. data/lib/lms_graphql/mutations/canvas/restore_deleted_eportfolio.rb +24 -0
  26. data/lib/lms_graphql/mutations/canvas/terminate_all_user_sessions.rb +24 -0
  27. data/lib/lms_graphql/mutations/canvas/update_associated_courses.rb +2 -2
  28. data/lib/lms_graphql/mutations/canvas/update_course.rb +8 -2
  29. data/lib/lms_graphql/mutations/canvas/update_course_settings.rb +3 -1
  30. data/lib/lms_graphql/resolvers/canvas/get_all_eportfolios_for_user.rb +25 -0
  31. data/lib/lms_graphql/resolvers/canvas/get_bulk_user_progress.rb +22 -0
  32. data/lib/lms_graphql/resolvers/canvas/get_custom_colors.rb +1 -1
  33. data/lib/lms_graphql/resolvers/canvas/get_department_level_statistics_broken_down_by_subaccount_completed.rb +22 -0
  34. data/lib/lms_graphql/resolvers/canvas/get_department_level_statistics_broken_down_by_subaccount_current.rb +22 -0
  35. data/lib/lms_graphql/resolvers/canvas/get_department_level_statistics_broken_down_by_subaccount_terms.rb +24 -0
  36. data/lib/lms_graphql/resolvers/canvas/get_document_annotations_read_state_courses.rb +26 -0
  37. data/lib/lms_graphql/resolvers/canvas/get_document_annotations_read_state_sections.rb +26 -0
  38. data/lib/lms_graphql/resolvers/canvas/get_eportfolio.rb +22 -0
  39. data/lib/lms_graphql/resolvers/canvas/get_eportfolio_pages.rb +23 -0
  40. data/lib/lms_graphql/resolvers/canvas/get_manually_created_courses_sub_account_for_domain_root_account.rb +22 -0
  41. data/lib/lms_graphql/resolvers/canvas/get_rubric_comments_read_state_courses.rb +26 -0
  42. data/lib/lms_graphql/resolvers/canvas/get_rubric_comments_read_state_sections.rb +26 -0
  43. data/lib/lms_graphql/resolvers/canvas/get_single_submission_by_anonymous_id_courses.rb +28 -0
  44. data/lib/lms_graphql/resolvers/canvas/get_single_submission_by_anonymous_id_sections.rb +28 -0
  45. data/lib/lms_graphql/resolvers/canvas/list_announcements.rb +1 -1
  46. data/lib/lms_graphql/resolvers/canvas/list_missing_submissions.rb +3 -1
  47. data/lib/lms_graphql/resolvers/canvas/list_planner_items_planner.rb +3 -1
  48. data/lib/lms_graphql/resolvers/canvas/list_planner_items_users.rb +3 -1
  49. data/lib/lms_graphql/types/canvas/account_notification_input.rb +2 -2
  50. data/lib/lms_graphql/types/canvas/appointment_group_input.rb +6 -6
  51. data/lib/lms_graphql/types/canvas/assignment.rb +1 -0
  52. data/lib/lms_graphql/types/canvas/assignment_event_input.rb +2 -2
  53. data/lib/lms_graphql/types/canvas/assignment_input.rb +5 -4
  54. data/lib/lms_graphql/types/canvas/authentication_event_input.rb +2 -2
  55. data/lib/lms_graphql/types/canvas/change_record.rb +1 -1
  56. data/lib/lms_graphql/types/canvas/change_record_input.rb +1 -1
  57. data/lib/lms_graphql/types/canvas/collaborator_input.rb +2 -2
  58. data/lib/lms_graphql/types/canvas/comm_message_input.rb +2 -2
  59. data/lib/lms_graphql/types/canvas/communication_channel_input.rb +4 -4
  60. data/lib/lms_graphql/types/canvas/completion_requirement_input.rb +2 -2
  61. data/lib/lms_graphql/types/canvas/content_export_input.rb +4 -4
  62. data/lib/lms_graphql/types/canvas/content_migration_input.rb +2 -2
  63. data/lib/lms_graphql/types/canvas/content_share.rb +1 -1
  64. data/lib/lms_graphql/types/canvas/content_share_input.rb +1 -1
  65. data/lib/lms_graphql/types/canvas/course_input.rb +4 -4
  66. data/lib/lms_graphql/types/canvas/discussion_topic.rb +1 -1
  67. data/lib/lms_graphql/types/canvas/discussion_topic_input.rb +7 -7
  68. data/lib/lms_graphql/types/canvas/e_portfolio.rb +24 -0
  69. data/lib/lms_graphql/types/canvas/e_portfolio_input.rb +24 -0
  70. data/lib/lms_graphql/types/canvas/e_portfolio_page.rb +20 -0
  71. data/lib/lms_graphql/types/canvas/e_portfolio_page_input.rb +20 -0
  72. data/lib/lms_graphql/types/canvas/epub_export_input.rb +2 -2
  73. data/lib/lms_graphql/types/canvas/exception_record.rb +1 -1
  74. data/lib/lms_graphql/types/canvas/exception_record_input.rb +1 -1
  75. data/lib/lms_graphql/types/canvas/external_feed_input.rb +2 -2
  76. data/lib/lms_graphql/types/canvas/favorite_input.rb +2 -2
  77. data/lib/lms_graphql/types/canvas/feature.rb +1 -1
  78. data/lib/lms_graphql/types/canvas/feature_flag_input.rb +4 -4
  79. data/lib/lms_graphql/types/canvas/feature_input.rb +3 -3
  80. data/lib/lms_graphql/types/canvas/group_category_input.rb +4 -4
  81. data/lib/lms_graphql/types/canvas/group_input.rb +4 -4
  82. data/lib/lms_graphql/types/canvas/group_membership_input.rb +2 -2
  83. data/lib/lms_graphql/types/canvas/inst_access_token.rb +14 -0
  84. data/lib/lms_graphql/types/canvas/inst_access_token_input.rb +14 -0
  85. data/lib/lms_graphql/types/canvas/migration_issue_input.rb +4 -4
  86. data/lib/lms_graphql/types/canvas/module_input.rb +4 -4
  87. data/lib/lms_graphql/types/canvas/module_item_input.rb +2 -2
  88. data/lib/lms_graphql/types/canvas/notification_preference_input.rb +2 -2
  89. data/lib/lms_graphql/types/canvas/outcome_import.rb +2 -1
  90. data/lib/lms_graphql/types/canvas/outcome_import_input.rb +4 -3
  91. data/lib/lms_graphql/types/canvas/outcome_input.rb +2 -2
  92. data/lib/lms_graphql/types/canvas/proficiency.rb +1 -1
  93. data/lib/lms_graphql/types/canvas/proficiency_input.rb +1 -1
  94. data/lib/lms_graphql/types/canvas/progress_input.rb +2 -2
  95. data/lib/lms_graphql/types/canvas/query_type.rb +107 -51
  96. data/lib/lms_graphql/types/canvas/quiz_input.rb +6 -6
  97. data/lib/lms_graphql/types/canvas/quiz_report_input.rb +2 -2
  98. data/lib/lms_graphql/types/canvas/report_parameter_input.rb +2 -2
  99. data/lib/lms_graphql/types/canvas/rubric_assessment.rb +1 -1
  100. data/lib/lms_graphql/types/canvas/rubric_assessment_input.rb +1 -1
  101. data/lib/lms_graphql/types/canvas/sis_assignment_input.rb +2 -2
  102. data/lib/lms_graphql/types/canvas/sis_import.rb +3 -3
  103. data/lib/lms_graphql/types/canvas/sis_import_input.rb +5 -5
  104. data/lib/lms_graphql/types/canvas/submission_input.rb +6 -6
  105. data/lib/lms_graphql/types/canvas/user.rb +2 -0
  106. data/lib/lms_graphql/types/canvas/user_input.rb +2 -0
  107. data/lib/lms_graphql/types/canvas_forward_declarations.rb +20 -16
  108. data/lib/lms_graphql/types/date_time_type.rb +4 -0
  109. data/lib/lms_graphql/version.rb +1 -1
  110. 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 AccountNotificationIconEnum < ::GraphQL::Schema::Enum
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, AccountNotificationIconEnum, "The icon to display with the message. Defaults to warning..Example: information", required: false
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 AppointmentGroupWorkflowStateEnum < ::GraphQL::Schema::Enum
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 AppointmentGroupParticipantVisibilityEnum < ::GraphQL::Schema::Enum
16
+ class AppointmentGroupInputParticipantVisibilityEnum < ::GraphQL::Schema::Enum
17
17
  value "private"
18
18
  value "protected"
19
19
  end
20
20
 
21
- class AppointmentGroupParticipantTypeEnum < ::GraphQL::Schema::Enum
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, AppointmentGroupWorkflowStateEnum, "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
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, AppointmentGroupParticipantVisibilityEnum, "'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, AppointmentGroupParticipantTypeEnum, "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
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 AssignmentEventWorkflowStateEnum < ::GraphQL::Schema::Enum
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, AssignmentEventWorkflowStateEnum, "Current state of the assignment ('published' or 'deleted').Example: published", required: false
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 AssignmentSubmissionTypeEnum < ::GraphQL::Schema::Enum
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 AssignmentGradingTypeEnum < ::GraphQL::Schema::Enum
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, AssignmentSubmissionTypeEnum, "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
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, AssignmentGradingTypeEnum, "The type of grading the assignment receives; one of 'pass_fail', 'percent', 'letter_grade', 'gpa_scale', 'points'.Example: points", required: false
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 AuthenticationEventEventTypeEnum < ::GraphQL::Schema::Enum
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, AuthenticationEventEventTypeEnum, "authentication event type ('login' or 'logout').Example: login", required: false
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 CollaboratorTypeEnum < ::GraphQL::Schema::Enum
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, CollaboratorTypeEnum, "The type of collaborator (e.g. 'user' or 'group')..Example: user", required: false
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 CommMessageWorkflowStateEnum < ::GraphQL::Schema::Enum
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, CommMessageWorkflowStateEnum, "The workflow state of the message. One of 'created', 'staged', 'sending', 'sent', 'bounced', 'dashboard', 'cancelled', or 'closed'.Example: sent", required: false
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 CommunicationChannelTypeEnum < ::GraphQL::Schema::Enum
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 CommunicationChannelWorkflowStateEnum < ::GraphQL::Schema::Enum
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, CommunicationChannelTypeEnum, "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
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, CommunicationChannelWorkflowStateEnum, "The current state of the communication channel. Possible values are: 'unconfirmed' or 'active'..Example: active", required: false
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 CompletionRequirementTypeEnum < ::GraphQL::Schema::Enum
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, CompletionRequirementTypeEnum, "one of 'must_view', 'must_submit', 'must_contribute', 'min_score', 'must_mark_done'.Example: min_score", required: false
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 ContentExportExportTypeEnum < ::GraphQL::Schema::Enum
8
+ class ContentExportInputExportTypeEnum < ::GraphQL::Schema::Enum
9
9
  value "common_cartridge"
10
10
  value "qti"
11
11
  end
12
12
 
13
- class ContentExportWorkflowStateEnum < ::GraphQL::Schema::Enum
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, ContentExportExportTypeEnum, "the type of content migration: 'common_cartridge' or 'qti'.Example: common_cartridge", required: false
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, ContentExportWorkflowStateEnum, "Current state of the content migration: created exporting exported failed.Example: exported", required: false
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 ContentMigrationWorkflowStateEnum < ::GraphQL::Schema::Enum
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, ContentMigrationWorkflowStateEnum, "Current state of the content migration: pre_processing, pre_processed, running, waiting_for_select, completed, failed.Example: running", required: false
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 CourseWorkflowStateEnum < ::GraphQL::Schema::Enum
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 CourseDefaultViewEnum < ::GraphQL::Schema::Enum
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, CourseWorkflowStateEnum, "the current state of the course one of 'unpublished', 'available', 'completed', or 'deleted'.Example: available", required: false
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, CourseDefaultViewEnum, "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
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 DiscussionTopicReadStateEnum < ::GraphQL::Schema::Enum
9
+ class DiscussionTopicInputReadStateEnum < ::GraphQL::Schema::Enum
10
10
  value "read"
11
11
  value "unread"
12
12
  end
13
13
 
14
- class DiscussionTopicSubscriptionHoldEnum < ::GraphQL::Schema::Enum
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 DiscussionTopicDiscussionTypeEnum < ::GraphQL::Schema::Enum
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, DiscussionTopicReadStateEnum, "The read_state of the topic for the current user, 'read' or 'unread'..Example: read", required: false
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, DiscussionTopicSubscriptionHoldEnum, "(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
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, 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", required: false
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 EpubExportWorkflowStateEnum < ::GraphQL::Schema::Enum
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, EpubExportWorkflowStateEnum, "Current state of the ePub export: created exporting exported generating generated failed.Example: exported", required: false
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