Welcome to the Panopto Community

Please note: All new registrants to the Panopto Community Forum must be approved by a forum moderator or admin. As such, if you navigate to a feature that is members-only, you may receive an error page if your registration has not yet been approved. We apologize for any inconvenience and are approving new members as quickly as possible.

Canvas integration - data via Panopto API?

Our institution relies on the integration between Panopto and Canvas to host videos in courses. I am interested in looking at which Panopto views are associated with users from a specific course. The users are authenticated due to the Canvas/Panopto integration, meaning when users watch a Panopto video in Canvas.. from within the Panopto data, I am able to see who has viewed what video - however I can't tell if they clicked play from a specific Canvas course (as these videos may be in multiple courses, and because the folder structure in Panopto is not 1:1 with the Canvas account structure).

It seems like a Panopto folder is generated for courses who use the integration.. but we often rely on Blueprint/Child functionality in Canvas, and people are able to post videos from any Panopto folder to any Canvas course (which is great for reuse).

Is there any way to gain access to data related to this Canvas/Panopto integration (who watched the video, and from what course) from the Panopto side? Ideally programmatically through one of the Panopto APIs?

Thank you in advance for any insight.



  • Options

    This is a great question. I hadn't considered the challenges of getting analytics with blueprints. Currently Panopto doesn't collect LTI launch data so it's not available for use. It's something they have recently started to investigate and I've forwarded your question to one of the people looking at the issue.

    Unfortunately I don't think there's any way to do what you want right now and the API likely won't be of any help.

  • Options

    One thing that was pointed out to me by a colleague was that when a video gets embedded to Canvas using LTI, the string that looks most like a sessionId is not the same as the sessionId. If we were to try to scrape the links from the Canvas side, would there be anyway to get that mapping from Panopto? (sessionId : "LTI sessionId" (or whatever this identifier is called)). Most people use the integration, but not everyone.

    For example, these are the same video:

    Direct embed: https://northeastern.hosted.panopto.com/Panopto/Pages/Embed.aspx?id=5f4e9c0b-cf85-4d2b-a9f5-ac8300fe1605&autoplay=false&offerviewer=true&showtitle=true&showbrand=false&start=0&interactivity=all

    LTI embed: https://northeastern.instructure.com/courses/81/external_tools/retrieve?display=borderless&url=https%3A%2F%2Fnortheastern.hosted.panopto.com%2FPanopto%2FLTI%2FLTI.aspx%3Fcustom_context_delivery%3Df17e7685-1b21-42e4-b90f-ad080123951d

  • Options
    Hiroshi OhnoHiroshi Ohno Panopto Employee


    Thank you for the inquiry.


    Thank you very much for sharing your experience with the community.

    As Charles suggested, Panopto has not collected the LTI launch data. Therefore, we are not ready to provide analytic data which Terianne may want. custom_context_delivery ID, which Terianne pointed out represents each embedded instance, but Panopto does not retain the information which course did that embed happen.

    One thing you might want to consider is to use Course Copy v2 (beta) feature. If the feature is enabled and the video is placed in Panopto course folder for the original course, the video will be copied to the course folder of the new course, and the analytic data is created per each individual video, which in turn can be aggregated per course folder.

Sign In or Register to comment.