Endpoint: /sites/{siteId}/filesystem/folders/{folderid}/permissions

Returns a list of permissions for a specific folder, adding existing permissions to a specific folder.

  • GET

  • POST

Method & URL

GET https://[server URL]:[port]/admin/v2/sites/{siteId}/filesystem/folders/{folderid}/permissions

GET Body Sample

Copy
# get folder permissions
#
###
GET https://{{host}}/admin/v2/sites/{{Siteid}}/filesystem/folders/%2Fusr%2Fdyelacic%2F/permissions HTTP/1.1
Authorization: EFTAdminAuthToken {{AuthToken}}
###

GET Response Body Sample

Copy
{ "data": [ { "attributes": { "canAppendFile": true, "canCreateSubfolder": true, 
"canDeleteFile": true, "canDeleteSubfolder": true, "canDownloadFile": true, 
"canList": true, "canRenameFileOrSubfolder": true, "canSeeHiddenFileOrSubfolder": true, 
"canSeeInParentList": true, "canSeeReadOnlyFileOrSubfolder": true, "canUploadFile": true }, 
"links": { "self": "/Admin/v2/sites/f1e58e70-926f-4786-877b-cf62abfdf0db/filesystem/folders/
%252Fusr%252Fdyelacic%252F/permissions/user-04dcfd20-fc73-41d0-a0d8-62d1706e6281" }, 
"relationships": { "trustee": { "data": { "id": "04dcfd20-fc73-41d0-a0d8-62d1706e6281", 
"meta": { "name": "dyelacic" }, "type": "user" }, 
"links": { "related": "/Admin/v2/sites/f1e58e70-926f-4786-877b-cf62abfdf0db/users/
04dcfd20-fc73-41d0-a0d8-62d1706e6281" } } }, "type": "folderPermissions" } ] }

GET PowerShell Sample

Copy
#
# get filesystem folders permissions
Write-Output "filesystem folders"
Write-Output "-----"
$folderList = Invoke-RestMethod -Uri "$baseURL/v2/sites/$siteID/filesystem/folders/
%2Fusr%2Fdyelacic%2f/permissions" -Method 'GET' -Headers $authHeader
Write-Output $folderList | ConvertTo-Json
foreach ($user in $folderList.data)
{
    Write-Output ("User $($user.id): $($user.attributes.loginName)")
}

Method & URL

POST https://[server URL]:[port]/admin/v2/sites/{siteId}/filesystem/folders/{folderid}/permissions

POST Body Sample

Copy
###
#Add / Link folder to an existing user permissions group.

POST https://{{host}}/admin/v2/sites/{{Siteid}}/filesystem/folders/%2Fusr%2Ftest_user_sql%2Fspam%2F/permissions HTTP/1.1
Authorization: EFTAdminAuthToken {{AuthToken}}

{
  "data": 
    {
      "type": "folderPermissions",
      "attributes": {
        "canAppendFile": true,
        "canCreateSubfolder": true,
        "canDeleteFile": true,
        "canDeleteSubfolder": true,
        "canDownloadFile": true,
        "canList": true,
        "canRenameFileOrSubfolder": true,
        "canSeeHiddenFileOrSubfolder": true,
        "canSeeInParentList": true,
        "canSeeReadOnlyFileOrSubfolder": true,
        "canUploadFile": false
      },
      "relationships": {
        "trustee": {
          "data": {
            "type": "userGroup",
            "id": " b8448b77-01d8-47d5-8ee7-9f407c95e39f",
            "meta": {
              "name": "Guests"
            }
          }
        }
      }           
    }
 }
###

POST Response Body Sample

Copy
HTTP/1.1 201 Created Date: Thu, 18 Aug 2022 19:32:43 GMT Location: 
/admin/v2/sites/7c2d15e3-e151-4029-8aa2-d4475296ba1c/filesystem/folders/
%252Fusr%252Ftest_user_sql%252Fspam%252F/permissions/group-b8448b77-01d8-47d5-8ee7-9f407c95e39f 
Content-Type: application/vnd.api+json ETag: "C5020903" Content-Length: 774 
Cache-Control: no-cache, no-store, must-revalidate Expires: -1 
X-Content-Type-Options: nosniff X-XSS-Protection: 1; mode=block 
Content-Security-Policy: default-src 'self' 'unsafe-inline' 'unsafe-eval' data:; 
Referrer-Policy: no-referrer { "data": { "attributes": { "canAppendFile": true, 
"canCreateSubfolder": true, "canDeleteFile": true, "canDeleteSubfolder": true, 
"canDownloadFile": true, "canList": true, "canRenameFileOrSubfolder": true, 
"canSeeHiddenFileOrSubfolder": true, "canSeeInParentList": true, 
"canSeeReadOnlyFileOrSubfolder": true, "canUploadFile": false }, "links": { "self": 
"/admin/v2/sites/7c2d15e3-e151-4029-8aa2-d4475296ba1c/filesystem/folders/
%252Fusr%252Ftest_user_sql%252Fspam%252F/permissions/group-b8448b77-01d8-47d5-8ee7-9f407c95e39f" }, 
"relationships": { "trustee": { "data": { "type": "userGroup", "id": 
"b8448b77-01d8-47d5-8ee7-9f407c95e39f", "meta": { "name": "Guests" } }, "links": { 
"related": "/admin/v2/sites/7c2d15e3-e151-4029-8aa2-d4475296ba1c/user-groups/
b8448b77-01d8-47d5-8ee7-9f407c95e39f" } } }, "type": "folderPermissions" } }

POST PowerShell Sample

Copy
#
# Add an existing user permissions group to a folder
$update = 
'{
  "data": 
    {
      "type": "folderPermissions",
      "attributes": {
        "canAppendFile": true,
        "canCreateSub    folder": true,
        "canDeleteFile": true,
        "canDeleteSubfolder": true,
        "canDownloadFile": true,
        "canList": true,
        "canRenameFileOrSubfolder": true,
        "canSeeHiddenFileOrSubfolder": true,
        "canSeeInParentList": true,
        "canSeeReadOnlyFileOrSubfolder": true,
        "canUploadFile": false
      },
      "relationships": {
        "trustee": {
          "data": {
            "type": "userGroup",
            "id": "b8448b77-01d8-47d5-8ee7-9f407c95e39f",
            "meta": {
              "name": "Guests"
            }
          }
        }
      }         
    }
 }’
$update = $update | ConvertFrom-Json
$update = $update | ConvertTo-Json -Depth 30
# add sub folder permissions
Write-Output "add sub folder permissions"
Write-Output "-----"
$folderList = Invoke-RestMethod -Uri 
"$baseURL/v2/sites/$siteID/filesystem/folders/
%2fusr%2fdyelacic%2ftuneroom%2f/permissions" -Method 'POST' -Headers $authHeader -Body $update
Write-Output $folderList | ConvertTo-Json
foreach ($user in $folderList.data)
{
    Write-Output ("User $($user.id): $($user.attributes.loginName)")
}