Found this content helpful? Log in or sign up to leave a like!

Problems with GraphQL in User Pageviews reports

ken_i_mayer
Community Participant
Prompted by the most recent Canvas release notes, we looked into the Page Views feature, and we were happy with the new documented changes.
However, we notice that more user actions are done by GraphQL API, which does not provide details in the page view report, either in the GUI or in the CSV file download.
We and most colleges and universities use these Page View reports for two crucial types of reports: academic integrity (evidence of potential cheating) and participation (which is used to determine financial aid or eligibility for a refund). Instructure should expect an uproar among Canvas administrators and universities if we cannot get accurate reports for these key functions.
What are the problems?
1. The graphQL API items in the Page View reports give a course context, but no item context, so we cannot see where or how the student participated in the course. In REST API items, the URL gives us all this information, in addition to the 'controller' field. 
2. Because all calls made by graphQL API are POST calls, even when data is not changes it seems like all graphQL calls are checked as "PARTICIPATED". Is this correct? Can you document that "participated" really means "participated"? Because we suspect we cannot even verify WHETHER a student participated, in addition to not knowing where or how they participated.
Since Instructure has often referred to plans to move more and more workflows to graphQL API, can you give us some indication that graphQL will give the same level of reporting as other methods do, so that Canvas administrators can continue to do the reporting that our institutions demand and need?
 
Here's an example of a PageView report, showing a submission marked Participation with a clear URL marker identifying where the submission occurred, and three GraphQL "participation" PageViews with no clear indications:
 
https://georgetown.instructure.com/courses/221453/assignments/1234438/submissions 221453 Course submissions create 9/4/25 17:57 TRUE post
https://georgetown.instructure.com/courses/221453/assignments/1234438?return_to=https%3A%2F%2Fgeorge... 221453 Course assignments show 9/4/25 16:15   get
https://georgetown.instructure.com/calendar 475521 User calendars show 9/4/25 16:15   get
https://georgetown.instructure.com/api/graphql 221453 Course graphql execute 9/4/25 16:14 TRUE post
https://georgetown.instructure.com/api/graphql 221453 Course graphql execute 9/4/25 16:13 TRUE post
https://georgetown.instructure.com/api/graphql 221453 Course graphql execute 9/4/25 16:09 TRUE post
Labels (1)
0 Likes