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.

How to get all public sessions from different tenants?

Hi,

we host several Panopto tenants and want to collect all sessions that are public to anyone (and only these ones) to import the links of them into another platform.

How can we achieve this by using the API? For now we can only fetch sessions from within a specific folder but we don't know how to check the sharing setting.

Many thanks in advance and best regards!

Chris

Tagged:

Answers

  • Kevin BaumKevin Baum Panopto Employee

    Hi Chris,

    Are these separate Panopto sites, or different folders or departments within the same Panopto site?

    In either case, you can get a list of sessions within any specific folder, and both our REST and SOAP APIs have functions to determine if a video is public or has other restricted sharing settings. In the REST API, you can use the Session Get Access Settings endpoint, which will return the access settings for the session, including the access level which would be set to Public for public videos. If you'd prefer to use the SOAP API, you can use the IAccessManagement.GetSessionAccessDetails endpoint, which will have a flag in the response called IsPublic. If that is set to true, then the video is publicly available.

    Please let me know if you have any other questions.

    Thanks,

    Kevin

  • Hi Kevin,

    Many thanks for your response!

    These are several Panopto sites, each within one on-premise infrastructure.

    It means I first have to collect any folder within each site and then get all sessions within all the folders? I don't exactly know how much folders we have through all the sites, but it could be thousands...

    Best regards

    Chris

  • Kevin BaumKevin Baum Panopto Employee

    Hi Chris,

    Each site would have its own endpoints for the API based on the domain used to access that site, so you would need to call the API specific to the site containing the session(s) when trying to determine access.

    You can continue to get each folder, and then search for sessions within each folder, or you can use the ISessionManagement.GetSessionsList endpoint which can get a list of sessions based on a search term. If you leave the search term empty, the paginated list returned would instead be all sessions that the calling user has access to in that Panopto site, which would eliminate the need to get all of the folders first. This endpoint is still paginated, so you will need to call the API multiple times, but it eliminates the need to get all of the folders first.

    I hope that this helps. Please let me know if you have any other questions.

    Thanks,

    Kevin

Sign In or Register to comment.