Developer Discussions

Discuss, share tips, and ask questions about Developer-related topics.

Hello Canvas Developers, I'm currently working on integrating a plagiarism detection platform with Canvas LMS and need some guidance regarding the Tool Consumer Profile (TCP). Specifically, I want to know: Do I need to create a custom TCP and host it...

Community Member
Canvas Developers Group
  • 0 Likes
  • 0 Replies

Hi,I am trying to configure my outgoing_mail.yml file with my Gmail SMTP details and I am getting the below error.[CANVAS_ERRORS] EXCEPTION LOGErrno::ECONNREFUSED (Connection refused - connect(2) for "localhost" port 25):/var/canvas/vendor/bundle/rub...

Community Member
Canvas Developers Group
  • 0 Likes
  • 0 Replies

I am looking to build a theme on canvas that hides the course navigation menu by default for anyone not logged in or with certain roles. I'm helping a team to build public courses, and we don't want people having to log in. Ideally we would just be s...

  • 0 Likes
  • 1 Replies

LTI 1.3 bulk deeplink setup not open browser  new tab deeplinks please provide proper solutions. i have already follow all IMS global instruction but not working  

Community Member
Canvas Developers Group
  • 0 Likes
  • 0 Replies

Re: Roles API Endpoint Docs. I'm looking to see a representation of a custom course role at a sub-account. I don't see any endpoints to return data other than what's representative of an Account role. We need to see a data matrix of a course role tha...

  • 0 Likes
  • 6 Replies

It would be really wonderful if the "question title" in new quizzes had a check box feature "make question title visible to students". It is weird that the question title is only visible in stimulus questions but hidden in all other question types. I...

  • 0 Likes
  • 2 Replies

Hey Dev Community I'm exploring the possible need to use the Rubrics API endpoints to associate a rubric to an assignment and am a bit perplexed what the different objects on the API doc page are referring to: https://canvas.instructure.com/doc/api/r...

  • 0 Likes
  • 2 Replies

We have SAML authentication enabled for our users, everything is fine with it. However, we have tried to use the just-in-time provisioning option for automatic user creation, this when the user does not exist on the platform.In the configuration it a...

Community Member
Canvas Developers Group
  • 0 Likes
  • 0 Replies

I am venturing into the world of Python and I noticed that their is a CanvasAPI library.  I was working in Chatgpt today looking up code and in the response it mentioned "Additionally, you might need to install the canvasapi library if you haven't al...

  • 2 Likes
  • 4 Replies

I am trying to implement a Plagiarism Detection Platform  with LTI 2.0 i managed to retrieve the access token and tool consumer profile but when I want to enable capabilities as written in the documentation my tool proxy registration endpoint returns...

Community Member
Canvas Developers Group
  • 0 Likes
  • 0 Replies

I am developing a web tool that utilizes cURL with developer key to access the Canvas API. I am currently able to login and use some API queries. However, I am currently trying to gain access to "v1/users/{user_id}/enrollments?include[]=last_activity...

  • 4 Likes
  • 1 Replies

When creating an LTI 1.3 developer key, you can set the assignment_selection placement to have 'default' = 'disabled'  but if you do this is there a way in the Canvas UI for an instructor to then enable this placement so the LTI 1.3 tool will show up...

Community Member
Canvas Developers Group
  • 0 Likes
  • 0 Replies

I have created a assignment which was linked with LTI 1.1 key. When i have created LTI 1.3 deployment key in that course it automatically launch with LTI 1.3 key and had additionally parameterslti11_transition_user_id:"xxxxxxxxx"lti11_transition_oaut...

Community Member
Canvas Developers Group
  • 0 Likes
  • 0 Replies

Hi everyone,  I hope I can explain the issue correctly as I lack the technical knowledge. In our institution we have been struggling with the following issues: Until recently we could open an HTLM file (built with Quarto) with no issues in a Canvas c...

Community Member
Canvas Developers Group
  • 0 Likes
  • 0 Replies

Greetings! I am working with the Canvas API python wrapper trying to check a particular student's access at a particular point in time to determine the IP used to access a test.  I can create the connection, create the correct object and pull a list ...

  • 0 Likes
  • 2 Replies

Hello! I'm trying to integrate a tool we developed with Symfony 6.2, to Canvas using LTI (1.3). My goal is to allow students access the tool from the course overview, without the need to log in again (since they are already logged in through Canvas, ...

Community Member
Canvas Developers Group
  • 1 Likes
  • 0 Replies

I have a group of about 90 sandbox courses that I need to reset the course content so they are ready to receive new content this summer.  I noticed in the API documentation when using the  POST|/api/v1/courses/:course_id/reset_content to reset the co...

  • 0 Likes
  • 5 Replies

We have a curriculum that we use for my online courses that comes to us as Blueprint Courses.  I usually create a sandbox course for each of the courses we use so the teachers can take the content from the blueprint course and rearrange so it matches...

  • 0 Likes
  • 4 Replies

We're using webhooks to monitor activity in our system. This morning at 9:27, I created a new user in Canvas, and, as expected, an event was triggered shortly thereafter. However, I then received another `user_created` event for the same user at 9:29...

Community Explorer
Canvas Developers Group
  • 0 Likes
  • 0 Replies

Hello,Posting for one of our developers while we get her own account setup.We are implementing LTI 1.3 and sucessfully getting id_token from url - https://sso.canvaslms.com/api/lti/authorize_redirect.After verifying it with public JWK, how do we gene...

Community Member
Canvas Developers Group
  • 0 Likes
  • 0 Replies

hello and good day, I am tying to create a course by APIs in my locally installation! but the problem is I pass all parameters but in the result my course name is 'Unnamed course' !! and it can't pass my parameters to save! what is my problem?   Than...

  • 1 Likes
  • 3 Replies

I just discovered that it's possible to catch an event when users send conversation messages in Canvas. When I log the event information I see that I have a `conversions_id`. But if I call the api with `/api/v1/conversations/:id` I get 404 back.  The...

  • 0 Likes
  • 4 Replies

Hey Team,I want to use Canvas APIs with an Access token(without manually generating it). Do I have to use the OAuth2 flow described in the OAuth Documentation .Or is there another way? Thanks in Advance.

  • 0 Likes
  • 2 Replies

I've been barking up multiple trees trying to make sense of this. I am setting up an LTI 1.3 tool - and while an `id_token` during launch COULD contain the user `email` (and thus give our tool a way to ID an internal user that matches) - I know a sch...

  • 0 Likes
  • 3 Replies

In the LTI configuration page, the section on launching without cookies (https://canvas.instructure.com/doc/api/file.lti_dev_key_config.html#launching-without-cookies) it says the following: In Step 2, instead of storing the state parameter in a cook...

Community Member
Canvas Developers Group
  • 0 Likes
  • 0 Replies

Dear Community,My Instituion is using a self-hosted canvas installation, and we are getting spammed by self-registrations. We need instructions setting up reCAPTCHA for the registration form.I've linked the announcement for the reCAPTCHA option, but ...

Community Novice
Canvas Developers Group
  • 0 Likes
  • 0 Replies

Are there instructions/guidelines for how an institution would like to make a web font available to be used in the RCE via a custom Canvas Theme? I've already done a proof of concept with the web font hosted on an external website and can get it to l...

Community Champion
Canvas Developers Group
  • 0 Likes
  • 0 Replies

Hi,We want to create a custom dashboard view that leverages outcomes to show learners what they have done, where they are going, and the complete "path". When a user logs on, they see in a glance what they should be doing. For reference, there are 8 ...

Community Member
Canvas Developers Group
  • 0 Likes
  • 0 Replies

Hi, people We will start using course sections in a project and we need to lock a specific module to each section in a different date, while allowing access to any other course content. I've seen in the canvas roadmap that doing this directly will be...

  • 0 Likes
  • 1 Replies

HiWe are using an API to pull grades out of Canvas to upload to our Student records systems. We are using the current_graded_by API to pull out the latest grade. Whilst this is working for 75% of our marked assignments it is pulling out a Null for re...

  • 0 Likes
  • 1 Replies

Developer Blog

A user blog for Developers building things for Instructure products. Read tips and tricks or share your own.

I am creating this blog as an area where we can share links to code repositories and projects with each other, as we discussed in the developers meetup yesterday.  If you have a project website, GitHub, etc that others might find useful, please share...

Community Coach Community Coach
Canvas Developers Group

Developers

Repositories

  • 6 Likes
  • 2 Replies

Years ago I used the API to find which LTI tools were used in a course, then switched to CD1 and now I'm using CD2.  I built a Tableau report with several filters, including: Type of course: sis, non-sis or allState of the course: published, unpublis...

Community Contributor
Canvas Developers Group

cd2

custom reports

external tool

  • 3 Likes
  • 0 Replies

I created a blog post in 2020 explaining how to bulk load and sync Canvas Avatar images using Powershell. https://community.canvaslms.com/t5/Canvas-Developers-Group/How-to-bulk-load-and-update-avatar-profile-pictures-with/ba-p/410101 Since then, I've...

Community Participant
Canvas Developers Group
  • 1 Likes
  • 0 Replies

I am working to have an AI LLM (ChatGPT 3.5 or better) generate QTI 2.1 XML that I can copy-paste into text files then ZIP and upload to Canvas to create Item Banks in New Quizzes.I have been successful in getting ChatGPT to generate a set of test qu...

Community Explorer
Canvas Developers Group
  • 4 Likes
  • 1 Replies

Sit back, relax, and let n8n do (most of) the tedious admin tasks for you. N8N is an open-source workflow automation tool that empowers you to harness the capabilities of Canvas backend systems, including Canvas API, Canvas Data, and Live Data, to st...

Community Coach Community Coach
Canvas Developers Group
  • 4 Likes
  • 0 Replies

Hello, Canvas Community!I'm thrilled to announce the R package called "vvcanvas". This package provides a convenient interface to interact with the Canvas Learning Management System (LMS) API, enabling users to authenticate, retrieve course informati...

Community Member
Canvas Developers Group

API

Canvas lms api

CRAN

R

  • 1 Likes
  • 0 Replies

Learn about some of the new features that I built and released in v3.0.0 of the Canvas LMS Mods (Basic) Chrome extension to provide course level reports primarily about course content.  The code for the extension is open-source if you would like to v...

Community Participant
Canvas Developers Group

API

chrome extension

Custom JavaScript

custom reports

JavaScript

report

  • 4 Likes
  • 1 Replies

Learn about some of the new features that I built and released in v3.0.0 of the Canvas LMS Mods (Basic) Chrome extension to enhance the experience of creating/editing rubrics.  The code for the extension is open-source if you would like to view and/o...

Community Participant
Canvas Developers Group

Canvas rubric

chrome extension

Custom JavaScript

JavaScript

  • 2 Likes
  • 5 Replies

Hi all, I've deployed an LTI 1.3 tool as a Discussion Topic Menu, and when I click the menu item in my course, I get back a json result, but I can't find the Discussion Topic ID in the json results.   Does anyone else have experience working with LTI...

Community Member
Canvas Developers Group

LTI 1.3

  • 0 Likes
  • 0 Replies

I recently updated my Canvas LMS Mods (Basic) Chrome extension to provide some new enhancements to the course search and admin flyout menu inspired by ideas and requests I have seen from other users in the community.

Community Participant
Canvas Developers Group

API

API Canvas

chrome extension

Custom JavaScript

  • 12 Likes
  • 40 Replies

It's few months that I don't access the Canvas app installed on OVH VPS server. I tried now and it shows the directory of files, but not the login interface. Nothings has been changed since the last time I use it (december 2022)

Community Member
Canvas Developers Group

Professional Development

  • 0 Likes
  • 2 Replies

Hi all,I would like to attach a zip file to all of my students submissions. I have been able to upload the file via the Cavnas API. However, I cannot seem to get the file to attach a student's submission. Acccording to https://canvas.instructure.com/...

Community Novice
Canvas Developers Group
  • 0 Likes
  • 1 Replies

I need an access token to grab a list of line items during the LTI1.3 workflow. I am currently receiving an unsupported grant type error.I have seen claims that Canvas does not support this flow to issue access tokens for machine to machine API use.L...

Community Member
Canvas Developers Group
  • 0 Likes
  • 0 Replies

I'm a teacher, and I've been playing with the api in a few other sheets that I've found. It's got me wondering if I could use a google sheet with a series of my gradebooks brought from other sheets, and have it update the grades in canvas.

Community Member
Canvas Developers Group
  • 0 Likes
  • 2 Replies

Hi, I'm new

Community Member
Canvas Developers Group
  • 0 Likes
  • 1 Replies

I have a suggestion for a couple new features that I know i would use frequently. I believe other students would as well. It is efficient and time saving, also would help navigate us through what we have completed over our time in school, our past an...

Community Member
Canvas Developers Group

Assignments

time saving

  • 0 Likes
  • 1 Replies

Hi Im a Canvas Admin, for a University I am requesting a design feature for Canvas, is it possible to add a points total option to appear on the Assignments modules for each category or the GradeBook total column? I have instructors with 25 to 40 ass...

Community Explorer
Canvas Developers Group
  • 0 Likes
  • 1 Replies

Dear Canvas This is Wasta, I am using Canvas app which my school provides me to takes the video lecture but on my Ipad (IOS 15) generation 8 ,as I open the video there is no audio in the video , only when I start the video there is a sound but as soo...

Community Member
Canvas Developers Group
  • 0 Likes
  • 0 Replies

Dear Canvas Dear CanvasThis is Wasta, I am using Canvas app which my school provides me to takes the video lecture but on my Ipad (IOS 15) generation 8 ,as I open the video there is no audio in the video , only when I start the video there is a sound...

Community Member
Canvas Developers Group
  • 0 Likes
  • 0 Replies

My team is trying to replicate in one of our views how Canvas presents TODOs in its own UI. The TODO items endpoint (https://canvas.instructure.com/doc/api/users.html#method.users.todo_items) appears to be the correct one to use, although it's unclea...

Community Member
Canvas Developers Group

API

pagination

TODOs

UI

  • 0 Likes
  • 2 Replies

I want to know how to use the webhook subscription api, including all the context types and such. 

Community Member
Canvas Developers Group
  • 0 Likes
  • 0 Replies

I need an api endpoint that returns a course image url.

Community Member
Canvas Developers Group

API

  • 0 Likes
  • 2 Replies

Learn about the Chrome extension that I've been developing as a personal side project to use with Canvas LMS to add some new features and help improve workflows.  Most of the customizations so far are for the admin area of Canvas, but I am now workin...

Community Participant
Canvas Developers Group

API

app

Canvas

Canvas Admin

chrome

chrome extension

development

  • 12 Likes
  • 28 Replies

“Computer Vision” sounds like something from the future, though computer vision algorithms are not as fantastic as they seem to be. Starting from 1960-ies and up to today, computer vision was developing along with AI ideas and culminated in today’s h...

Community Member
Canvas Developers Group

app

development

Development Process

  • 0 Likes
  • 0 Replies

Hi Everyone,Great to be part of this community, Im IT Support for Horizon Christian School, and would love to share an app i made for the school.Not sure were to post this, so hopefully ok here.I have created an application with a Settings file that ...

Community Member
Canvas Developers Group
  • 0 Likes
  • 0 Replies

I want a test question type that I will call a mastery question. This kind of question will allow me to randomize the input numbers so that the answer can be calculated by Canvas but will be different every time for every student. For example, ...If ...

Community Member
Canvas Developers Group
  • 0 Likes
  • 2 Replies

Unenroll user from a class via SIS UserID?

Community Member
Canvas Developers Group

API

class

SIS user ID

Unenroll

  • 0 Likes
  • 2 Replies

I'm looking to build an app that integrates on all canvas pages for the student role and ideally would like to use LTI to accomplish this, but as LTI placement doesn't allow for space on every page and doesn't allow for the space I'm looking to occup...

Partner Partner
Canvas Developers Group
  • 0 Likes
  • 6 Replies

Hi everyone, I hopefully have a simple question to ask here about this call. I want to run a creation of quiz questions through a CSV file with this API and I have everything sorted bar how to write the say 4 possible answers to a multiple choice que...

Community Explorer
Canvas Developers Group
  • 0 Likes
  • 1 Replies

We need to embed our Hubspot chatflow to our Canvas Instructure.

Community Member
Canvas Developers Group

integration

  • 0 Likes
  • 0 Replies

Product Blog: Developers

Blog posts from the Product blog for Developers on the Instructure Platform.

Data Access Platform (DAP) CLI and Client Library v1.1.0 is now available.  Version 1.1.0 is a fast follow to our GA release to address some community identified issues with a new feature enhancement to prepare us for future updates.

Instructure Instructure
The Product Blog

Admin Analytics

Canvas Data

Developers

Release Communications

  • 3 Likes
  • 4 Replies

Data Access Platform CLI & Client Library is now GA

Instructure Instructure
The Product Blog

Canvas Data

Canvas LMS

Developers

  • 5 Likes
  • 29 Replies

We are updating jQuery in Canvas and your custom JavaScript might break if you leverage jQuery in it

Instructure Instructure
The Product Blog

Canvas LMS

Developers

  • 6 Likes
  • 20 Replies

Canvas is changing its LTI 1.3 OIDC Auth domain to align with security practices and to support the new LTI 1.3 Platform Storage specification - which lets LTI tools still function even when browsers disable cross-site 3rd-party cookies. LTI 1.3 tool...

Instructure Instructure
The Product Blog
Comments closed

Canvas LMS

Developers

LTI Integrations

Release Communications

  • 2 Likes
  • 47 Replies

We decided to implement New Quizzes Public API in GraphQL and here's the first information you need to know about and what you can expect from us regarding the documentation of the API.

Instructure Alumni Instructure Alumni
The Product Blog
Comments closed

Canvas LMS

Developers

New Quizzes

  • 5 Likes
  • 20 Replies

Instructure has a long history of opening the systems we build to extension and enhancement.  When we build products like Canvas, we want to make sure they work well for ALL our customers. After a long series of forays and experiments examining wheth...

Instructure Alumni Instructure Alumni
The Product Blog
Comments closed

Canvas LMS

Developers

  • 8 Likes
  • 3 Replies

Let's discuss New Quizzes Public API's foundation: GraphQL or REST? 

Instructure Alumni Instructure Alumni
The Product Blog
Comments closed

Canvas LMS

Developers

New Quizzes

  • 7 Likes
  • 16 Replies

As I looked at my calendar this month I was reminded this May 13 (today) marks an anniversary of when LTI support was deployed to Canvas. This year will be 10 years! \o/

Instructure Alumni Instructure Alumni
The Product Blog
Comments closed

Canvas LMS

Developers

LTI Integrations

  • 7 Likes
  • 0 Replies

If you are using Developer Keys, ensure your HTTP Redirect URIs are secure before March 3.

Instructure Alumni Instructure Alumni
The Product Blog
Comments closed

Canvas LMS

Developers

  • 0 Likes
  • 1 Replies

If you are a developer who used oEmbed with LTI content embedded into the Canvas Rich Content Editor you will want to review this.

Instructure Alumni Instructure Alumni
The Product Blog
Comments closed

Canvas LMS

Developers

LTI Integrations

  • 2 Likes
  • 0 Replies

Data is a powerful tool that has the potential to transform the way we offer education to students. Over the past five years, the Canvas data sharing product has been very important to our users and institutions.

Instructure Alumni Instructure Alumni
The Product Blog
Comments closed

Canvas LMS

Developers

  • 8 Likes
  • 20 Replies

Recently, IMS Global announced the deprecation schedule of the LTI 1.0, 1.1, 1.2, and 2.0 specifications. Going forward, LTI Core version 1.3 (LTI 1.3) will be the recommended specification for new integrations and any integrations wishing to upgrade...

Instructure Alumni Instructure Alumni
The Product Blog
Comments closed

Canvas LMS

Developers

LTI Integrations

  • 6 Likes
  • 40 Replies

Recently IMS Global Learning Consortium announced an unprecedented number of education platforms who have been identified as early adopters of LTI Advantage and have run through early certification testing. The next day Instructure issued a statement...

Instructure Alumni Instructure Alumni
The Product Blog
Comments closed

Developers

  • 5 Likes
  • 0 Replies

Since its inception, Canvas has always been open and transparent about our business and our features. We believe in being open. We believe in allowing you to use Canvas the way you want to use Canvas. And branding is one component that we’ve been wor...

Instructure Alumni Instructure Alumni
The Product Blog
Comments closed

Canvas LMS

Developers

  • 31 Likes
  • 64 Replies