Get Started

Hello! Welcome to Instructure's Developer Documentation portal.

This portal contains API documentation for all Instructure products.

Below are some examples of things you can do using Instructure product APIs:

Integrate Canvas LMS into Your Applications

Access Rich Educational Data with Data Access Platform (DAP)

  • Access rich educational data with Data Access Platform (DAP)

  • For example, get detailed analytics about your student performance

  • Create institutional reports

  • Or integrate Canvas data into your business intelligence tools

Improve Your Assessments with Quizzes

Improve Your Classes

LLM Integration

Quickstart Guide

1. Get Your Access Key

To access API endpoints for most of our services you need to get an Access Key. The way of getting these Access keys may be different for each service. Go into the subsection of the service you would like to use and look for a subpage called Authentication, OAuth, Developer Keys.

Examples:

2. Make Your First Request!

  1. Take your authentication key or secret you got in the previous step.

  2. Find an API you would like to try.

  3. If there is a "Test it" button, you can click on it and test it on the spot.

  4. Otherwise, use Postman or Terminal with curl for testing it.

3. Understand the Responses

When you make an API call, you'll typically get a response in JSON format. Here's how to quickly understand and use these responses:

✅ Successful Response (with status 200 or 201):

A successful response usually looks something like this (this is just an example):

{
  "id": 123,
  "name": "Introduction to Biology",
  "course_code": "BIO101"
}

Each response includes data fields (like id, name, and course_code) clearly describing what you've requested. You can use these fields directly in your applications.

⚠️ Error Response (status 4xx):

If something goes wrong, you'll get an error response, for example:

{
  "errors": [
    {
      "message": "Invalid access token."
    }
  ]
}

Errors come with clear messages indicating the problem. Common issues include authentication errors, incorrect parameters, or permission issues.

📑 Pagination and Large Data:

Some services, for example Canvas LMS, split API calls into multiple pages when you request a lot of data (like a long list of courses or users):

  • Check for a Link header in the response, which provides URLs for the next or previous page of results.

  • Example header:

Link: <https://canvas.instructure.com/api/v1/courses?page=2>; rel="next"

You can follow these links to fetch all the data. Find more info about Canvas pagination here.

🛠️ Helpful Tips:

  • Use tools like Postman or browser extensions (like JSONView) to visualize responses clearly.

  • Always refer to the specific API's documentation page for detailed descriptions of each data field.

Last updated

Was this helpful?