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.

REST Endpoint api/v1/folders/{id}/children not returning all child folders

edited August 2021 in API

Hi there,

I'm currently testing out some API calls to the /api/v1/folders/{id}/children and I'm finding that I'm not getting expected results.

Depending on the folder I call, I either receive all child folders like expected or just a small subset of the existing subfolders. I don't think it's a pagination issue because I'm expecting, for example, 12 folders and receiving 3 (so all should fit on a page). I have an admin role in my organizations Panopto instance so it shouldn't be a permissioning issue either. Using the UI I can access all the necessary folders without problem.

Any tips or advice would be appreciated.

Thanks in advance!

Answers

  • Joe MalmstenJoe Malmsten Panopto Employee

    Hi Marko, 


    The /folders/{id}/children call will only return direct descendant children, not any children of subfolders. We are also tracking an issue where this API call may not return department folders. Are you calling this on a folder that includes departments as part of it's subfolders? 


    If you don't believe that the issue is related to department folders, please feel free to open a support ticket at https://support.panopto.com so that we can get some additional information to look further into this for you.


    Thanks, 

    Joe

  • Hi Marko and Joe,

    I am facing the exact same issue. Some specific folders are not part of the /folders/{id}/children call, although they are direct subfolders, and I can see them through the user interface.

    From the settings page of the folders which don't appear, I don't see any difference, but from the /folders/{id} API call, I can see <IsDepartment>false</IsDepartment>, so I don't believe they are department folders.

    I can only see one difference with folders actually listed in the children: <DeliveriesHaveSpecifiedOrder> tag set to true, instead of false for "regular" folders. Also, the folder that doesn't display is one with children folders in turn, but I don't believe this makes a difference because other folders with children actually appear in the /folders/{id}/children endpoint.

    Looking forward to a solution. If a ticket has been opened, I would like to know its ID; otherwise I can open one.

    Thanks,

    Romain

  • I have been able to do some more in-depth analysis. On our Panopto instance, we have 18 department folders. Among them, 16 are first-level folders, and do appear when I query the children of the root folder.

    The other two are second-level, and both of them are missing from their parent folder's children, when queried from the API. A call to /folders/{id} gives, for both: <isDepartment>false</isDepartment>, along with <DepartmentId i:nil="true"/>.

    Now it keeps getting stranger: all 16 other folders have <isDepartment>false</isDepartment> as well, when queried from /folders/{their id}. BUT when I query /folders/{their parent's id}/children, all of them have <isDepartment>true</isDepartment>! (and a valid DepartmentID)

    My guess is that there are indeed at least two issues with the API regarding department folders.

    1. Both the calls above should return <isDepartment>true</isDepartment>, so that would be an issue regarding the /folders/{id} endpoint.
    2. The /folders/{id}/children should return all folders (including department folders), and it's not always the case. In our instance, it appears that the issue exists when we call that function on a department folder that has subfolders which, in turn, are department folders - that could be the issue.

    Hope that helps.

  • Joe MalmstenJoe Malmsten Panopto Employee

    Hi,


    The department folders not being returned will be fixed in the next minor release. I will file an internal work item to fix the calls not marking the folders/{id] endpoint with isDepartment.


    Thanks,

    Joe Malmsten

  • Hi Joe and Romain,

    Thank you both for looking into this!

    I can confirm that it was certain direct decedents that were not coming back in the API calls, not deeply nested children. I was making these calls at a high level where department folders were indeed not being returned

    I'm not clear on if that was exclusively the issue however because it was also not returning all children in different cases as well. For instance personal User folders for people at my institution, which I can ordinarily access, do not get listed as children when their parent folder is queried.

    I'm not sure on how to access the settings page that Romain has described otherwise I'd take a look at those <isDepartment> flags - however they are not returned as part of the API call to folders/{id}. Maybe Romain would be willing to share more about that and I can look into this further.

    Once again appreciate the help! I'll be keeping an eye out for the next minor release

    Marko

  • @Marko Prodanovic to see the full details of a given item, log in to the Panopto app using the account that has an API client configured, then simply paste the REST API request URL into your browser.

Sign In or Register to comment.