Dec 06 2018 08:57 AM
Hello All,
Does SharePoint allow to retrieve all folders in a List? (Not a Doc Library). Just a basic List.
I am using SharePoint Online.
I tried /_api/web/lists/GetById('${ListID}')/Folders without luck.
And please can someone share a link to a comprehensive SPO Lists & Doc Lib REST API reference?
I only have this https://msdn.microsoft.com/en-us/library/office/jj860569.aspx#Reference .
Is it not outdated?
Dec 07 2018 03:01 AM
SolutionHi @imbourg
You can filter by content type for example.
/_api/web/lists/GetByTitle('Documents')/items?$filter=ContentType eq 'Folder'
From here you can then select and expand other properties to return what you need.
Hope this helps
Dec 07 2018 05:00 AM
Thank you @Joel Rodrigues
I also found this:
/_api/web/lists/GetById('${ListID}')/Items?$filter=FSObjType eq 1
But the problem is that just like yours, the response does not give the folders' names.
Then I found:
/_api/web/lists/GetById('${ListID}')/rootFolder/Folders
It gives the folders' name but curiously it finds an additional folder named Item :(
Even with a list without folders, it will list that weird folder...
Thanks very much
Dec 10 2018 05:18 AM
Using FSSobjType is another valid way of doing it.
Having to access the /Folders endpoint is what I meant with selecting and expanding the required properties. You have multiple properties you can select/expand to get all the information you need as they may be split across different endpoints.
Glad it's working for you :)
Sorry the delay in replying back. Swapped phone and had issues with MFA...
Joel
Feb 07 2023 12:19 PM
Mar 23 2023 09:20 AM
@Joel Rodrigues I have a feeling that no matter how complex site content types get, any instance of any type will always have a field "FSObjType" that is always equal to 0 for non-folders and 1 for folders. I myself am trying to filter out folders and Document Sets but include everything else. Is this the way to do this?
Dec 07 2018 03:01 AM
SolutionHi @imbourg
You can filter by content type for example.
/_api/web/lists/GetByTitle('Documents')/items?$filter=ContentType eq 'Folder'
From here you can then select and expand other properties to return what you need.
Hope this helps