CodeChum for Teachers
For TeachersFor Students
  • 🤷What is CodeChum?
  • 📚Available courses
  • 💸Pricing plans
  • ❓FAQs
  • Getting Started For
    • 📔Programming 1
      • ©️C
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
      • ➕C++
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
      • 🖥️C#
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
      • ☕Java
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
      • 🐍Python
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
    • 📘Programming 2
      • ©️C
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
      • ➕C++
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
      • 🖥️C#
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
        • Page
      • ☕Java
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
      • 🐍Python
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
    • 📗Data Structures
      • ©️C
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
      • ➕C++
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
      • 🖥️C#
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
      • ☕Java
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
      • 🐍Python
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
    • 📕OOP with GUI
      • ➕C++ (Without GUI Support)
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
      • 🖥️C# (With Windows Forms GUI Support)
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
      • ☕Java (With AWT and Swing GUI Support)
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
      • 🐍Python (With TKinter GUI Support)
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
    • 📙Basic Web Development
      • 🌐HTML/CSS/JS
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
    • 📓MySQL Fundamentals
      • 🐬MySQL
        • 1️⃣Sign up as Teacher
        • 2️⃣Create a class
        • 3️⃣Invite students to class
        • 4️⃣Give students an activity
          • ⚪How to create an activity
          • ⚪How students will answer this activity
        • 5️⃣Monitor students
        • 6️⃣Export grades
  • More Features you may want to explore
    • 🏠Classes Section
      • 👀How to view grades
      • 📔How to view lessons
      • 📣How to post announcements
    • 📃Activities Section
      • ✏️How to edit student's score
        • Other items
      • 📅How to reschedule/extend activities
      • ↩️How to allow your student to retake the activity
      • 🏅How to exempt your student from answering the activity
      • 👺How to check for potential cheating
    • 🖊️Items Section
      • ➕How to create an item
        • ➕How to create a Console-based item
        • ➕How to create a Questionnaire item
        • ➕How to create a GUI-based item
        • ➕How to create a Web-based item
        • ➕How to create MySQL database item
      • 👉How to use your item in an activity
    • 🤾‍♂️Playground Section
      • ⛳How to use the Playground
  • Advanced Guide
    • 📜View Certificates
    • 🏫LMS Integration
      • 1️⃣Initial setup (admin)
        • Canvas
        • Moodle
        • Blackboard
      • 2️⃣How to use (teacher)
        • 🔗Connect to LMS
        • 🧑‍🏫Link CodeChum class to LMS
        • 🧑‍🎓Invite students to LMS-linked class
        • 💯Sync grades to LMS
      • 3️⃣How to use (student)
        • 🧑‍🏫Join an LMS-linked class
          • a. Connect to LMS
          • b. Join via class code
      • ❓FAQs
  • Troubleshooting
    • 🚧How to report bugs/issues
  • Other Links
    • 🌐CodeChum Website
    • 🍎CodeChum Web App
Powered by GitBook
On this page
  1. Advanced Guide
  2. LMS Integration
  3. Initial setup (admin)

Canvas

PreviousInitial setup (admin)NextMoodle

Last updated 8 months ago

This guide provides step-by-step instructions for Canvas administrators to integrate Canvas with CodeChum. Follow the steps carefully to ensure a successful setup.


1. Configure Canvas Developer Key for Canvas REST API
  • Objective: Enable your Canvas REST API with limited permissions to be consumed by CodeChum

  • Steps:

    1. Log In as Administrator in Canvas LMS.

    2. Navigate to Admin > [Organization] > Developer Keys

    3. Create a new Developer Key for API Key

    4. Fill in the following fields:

      • Key Name: CodeChum App

      • Owner Email:

      • Redirect URIs

        1. If partnered with CodeChum please update the redirect URI with your subdomain in codechum.

          • https://[your_school].codechum.com/oauth?method=signup&platform=canvas

          • https://[your_school].codechum.com/oauth?method=login&platform=canvas

          • https://[your_school].codechum.com/oauth?method=private_login&platform=canvas

        2. If not partnered, just use the with your school abbreviation.

      • Client Credentials Audience: Canvas

    5. Enable “Enforce Scopes” and enable the following specific endpoints:

      • /auth/userinfo

      • url:GET|/api/v1/users/:user_id/profile

      • url:GET|/api/v1/users/:user_id/enrollments

      • url:GET|/api/v1/sections/:section_id/enrollments

      • url:GET|/api/v1/courses

      • url:GET|/api/v1/courses/:course_id/sections

      • url:GET|/api/v1/sections/:id

      • url:GET|/api/v1/users/:user_id/courses

      • url:GET|/api/v1/courses/:id

      • url:POST|/api/v1/courses/:course_id/assignments

      • url:GET|/api/v1/courses/:course_id/assignments/:id

      • url:PUT|/api/v1/courses/:course_id/assignments/:id

      • url:POST|/api/v1/courses/:course_id/submissions/update_grades

      • url:POST|/api/v1/sections/:section_id/submissions/update_grades

      • url:PUT|/api/v1/courses/:course_id/assignments/:assignment_id/submissions/:user_id

      • url:PUT|/api/v1/sections/:section_id/assignments/:assignment_id/submissions/:user_id

      • url:GET|/api/v1/courses/:course_id/enrollments

      • url:POST|/api/v1/courses/:course_id/enrollments

      • url:POST|/api/v1/sections/:section_id/enrollments

      • url:DELETE|/api/v1/courses/:course_id/enrollments/:id

      • url:GET|/api/v1/progress/:id

2. Register and Verify Integration with CodeChum
  • Objective: Confirm that the integration with Canvas is successful.

  • Steps:

    1. Email the following to :

      • Canvas Application ID

      • Canvas API Secret Key

      • Your Canvas full web URL or domain (e.g ).

    2. Await confirmation from CodeChum.

    3. Once you receive confirmation that everything is set up correctly, the integration process is complete.

🏫
1️⃣
[email protected]
app.codechum.com
https://app.codechum.com/oauth?method=signup&abbreviation=[your_school]&platform=canvas
https://app.codechum.com/oauth?method=login&abbreviation=[your_school]&platform=canvas
https://app.codechum.com/oauth?method=private_login&abbreviation=[your_school]&platform=canvas
[email protected]
https://canvas.univ.edu
Navigation flow to locate Developer Key
Form to locate Client Credentials audience