cancel
Showing results for 
Search instead for 
Did you mean: 
Chris_Munzo
Community Champion

Canvas Data vs data in API?

Jump to solution

Is there a document that specifies individual data elements that are:

Available in Canvas Data but not via the API; and

Available via the API but not in Canvas Data?

Maybe Deactivated user​ can answer?

1 Solution

Accepted Solutions
lfeng
Community Participant

Hi everyone - I'm sorry but I don't have a document currently that maps the api to what is available through Canvas Data.  We are hoping to publish a blog post that compares and contrasts accessing data via the api vs. via Canvas Data.    In a nutshell, if you know ahead of time the specific course or person or assignment you are looking for, the api is a nice direct way to get it.  But if you are looking to do summary by terms or see correlations and patterns, having the data laid out in a warehouse schema may be more effective.

Hope this helps - more to come!

Linda

View solution in original post

6 Replies
James
Community Champion

 @Chris_Munzo ​,

What a great question!

I know you're wanting an answer from Instructure as you already know about these two resources (in fact, you're probably in a better position than most to know the answer), I'm just putting it out there for other people who are reading.

Unfortunately, I don't think there's even a document that specifies what's available through the API, other than reading through all the API documentation: Canvas LMS REST API Documentation  They say the documentation is in the code itself. That doesn't sound like a separate list is available, but let's hope there's an internal document somewhere.

Canvas Data has documentation that lists what's available. At least it's all on a single page: https://portal.inshosteddata.com/docs/

Let's hope Linda has something, but I'm not holding up hope.

Hello  @James ​ and  @Chris_Munzo ​,

It is possible that Deactivated user​ will know more but as far as I know, the only documentation available for the APIs is what is maintained in Canvas, for example: https://scottd.instructure.com/doc/api/. 

Sorry, but I don't have any info on Canvas Data. 

lfeng
Community Participant

Hi everyone - I'm sorry but I don't have a document currently that maps the api to what is available through Canvas Data.  We are hoping to publish a blog post that compares and contrasts accessing data via the api vs. via Canvas Data.    In a nutshell, if you know ahead of time the specific course or person or assignment you are looking for, the api is a nice direct way to get it.  But if you are looking to do summary by terms or see correlations and patterns, having the data laid out in a warehouse schema may be more effective.

Hope this helps - more to come!

Linda

View solution in original post

amcdona
Community Participant

One of the most useful items I've been using from the Canvas Data is the REQUESTS https://portal.inshosteddata.com/docs/#requests which is not available in the APIs.

rubyn
Community Participant

We were previously using /api/v1/courses/:course_id/analytics/student_summaries to get page_views per student per class.  How do we get the same page_views value using the Canvas Data requests table?  Doing straight count of id and excluding urls that start with "api/v1" doesn't get it quite the same...

amcdona
Community Participant

I don't know what actions make up the page view component of the analytic, I would start with the following:

select b.canvas_id, b.name, a.web_application_controller, count(*)

from requests a, user_dim b, course_dim c

where a.user_id = b.id

and a.course_id = c.id

and c.canvas_id = XXXXXX

and a.web_application_controller in (,,,,,)

group by b.canvas_id, b.name, a.web_application_controller;

Then adjust the web_application_controller values that were of interest (weed out the api based calls).

The results will format nicely in an Excel pivot table.