Endpoint: /sites/{siteId}/filesystem/folders/{folderid}
Returns folder settings, updates folder settings, creates folders, and deletes folders.
-
GET
-
POST
-
PATCH
-
DELETE
Method & URL
GET https://[server URL]:[port]/admin/v2/sites/{siteId}/filesystem/folders/{folderid}
GET Body Sample
##### GET the Folder structure and settings for a specifc User #########
@User_Folder_ID = AFAR
GET https://{{host}}/admin/v2/sites/{{Siteid}}/filesystem/folders/%2Fusr%2F{{User_Folder_ID}}
%2F HTTP/1.1
Authorization: EFTAdminAuthToken {{AuthToken}}
GET Response Body Sample
HTTP/1.1 200 OK Date: Mon, 08 Aug 2022 17:04:14 GMT Content-Type: application/vnd.api+json
ETag: "95FFEAF1" Content-Length: 470 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": { "name": "AFAR", "subFolders": [], "target": null, "uploadQuota": null },
"id": "%2Fusr%2FAFAR%2F", "links": { "self":
"/admin/v2/sites/e82de253-b8ec-4b70-a72d-d017c3317f01/filesystem/folders/%252Fusr%252FAFAR%252F" },
"relationships": { "inheritedPermissions": { "meta": { "name": "inherited permissions" } },
"permissions": { "links": { "related":
"/admin/v2/sites/e82de253-b8ec-4b70-a72d-d017c3317f01/filesystem/folders/%252Fusr%252FAFAR%252F/
permissions" } } }, "type": "folder" } }
GET PowerShell Sample
# get filesystem folders
Write-Output "filesystem folders"
Write-Output "-----"
$folderList = Invoke-RestMethod -Uri "$baseURL/v2/sites/$siteID/filesystem/folders/%2Fusr%2F" -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}
POST Body Sample
###
POST https://{{host}}/admin/v2/sites/{{Siteid}}/filesystem/folders/%2fusr%2fdyelacic%2f/folders HTTP/1.1
Authorization: EFTAdminAuthToken {{AuthToken}}
{
"data": {
"type": "folder",
"id": "%2Fbiohazard%2F",
"attributes": {
"name": "biohazard",
"target": "c:/temp"
}
}
}
POST Body Sample - Example II – including Upload Quotas
##### POST REQUEST TO CREATE A FOLDER WITH UPLOAD QUOTA ENABLED #########
@User_Folder = afar
POST https://{{host}}/admin/v2/sites/{{Siteid}}/filesystem/folders/
%2Fusr%2F{{User_Folder}}%2F/folders HTTP/1.1
Authorization: EFTAdminAuthToken {{AuthToken}}
{
"data": {
"type": "folder",
"attributes": {
"name": "Folder4",
"subFolder": "Folder4",
"uploadQuota": {
"emailsToReportToOnExceed": [
"gsqaaf1@gmail.com",
"gsqaaf2@gmail.com"
],
"enabled": true,
"limitMBytes": 150,
"usedMBytes": 0
}
}
}
}
POST Response Body Sample
{ "data": { "attributes": { "name": "biohazard", "subFolders": [], "target": "c:/temp" },
"id": "%2Fusr%2Fdyelacic%2Fbiohazard%2F", "links": { "self":
"/Admin/v2/sites/f1e58e70-926f-4786-877b-cf62abfdf0db/filesystem/folders/
%252Fusr%252Fdyelacic%252Fbiohazard%252F" }, "relationships": { "inheritedPermissions": {
"meta": { "name": "inherited permissions" } }, "permissions": { "links": {
"related": "/Admin/v2/sites/f1e58e70-926f-4786-877b-cf62abfdf0db/filesystem/folders/
%252Fusr%252Fdyelacic%252Fbiohazard%252F/permissions" } } }, "type": "folder" } }
POST PowerShell Sample
$update =
'{
"data": {
"type": "folder",
"id": "%2Fmetallica2%2F",
"attributes": {
"name": "metallica2",
"target": "c:/util"
}
}
}'
$update = $update | ConvertFrom-Json
$update = $update | ConvertTo-Json -Depth 20
# update filesystem folders
Write-Output "filesystem folders"
Write-Output "-----"
$folderList = Invoke-RestMethod -Uri
"$baseURL/v2/sites/$siteID/filesystem/folders/%2fusr%2fFranklin%2f"
-Method 'POST' -Headers $authHeader -Body $update
Write-Output $folderList | ConvertTo-Json
foreach ($user in $folderList.data)
{
Write-Output ("User $($user.id): $($user.attributes.loginName)")
}
Method & URL
PATCH https://[server URL]:[port]/admin/v2/sites/{siteId}/filesystem/folders/{folderid}
PATCH Body Sample
#
# change the path to where this virtual folder points
#
###
PATCH https://{{host}}/admin/v2/sites/{{Siteid}}/filesystem/folders/
%2Fusr%2Ftest_user_sql%2Fmetallica%2F HTTP/1.1
Authorization: EFTAdminAuthToken {{AuthToken}}
{
"data": {
"attributes": {
"name": "metallica",
"subFolders": [],
"target": {
"type": "winFolder",
"winFolder": {
"path": "C:\\temp"
}
},
"uploadQuota": null
},
"id": "%2Fusr%2Ftest_user_sql%2Fmetallica%2F",
"type": "folder"
}
}
###
PATCH Response Body Sample
HTTP/1.1 200 OK Date: Thu, 18 Aug 2022 13:31:59 GMT Content-Type: application/vnd.api+json E
Tag: "B0A1B271" Content-Length: 590 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": { "name": "metallica",
"subFolders": [], "target": { "type": "winFolder", "winFolder": { "path": "C:\\temp" } },
"uploadQuota": null }, "id": "%2Fusr%2Ftest_user_sql%2Fmetallica%2F", "links": {
"self": "/admin/v2/sites/7c2d15e3-e151-4029-8aa2-d4475296ba1c/filesystem/folders/
%252Fusr%252Ftest_user_sql%252Fmetallica%252F" }, "relationships": { "inheritedPermissions":
{ "meta": { "name": "inherited permissions" } }, "permissions": { "links": { "related":
"/admin/v2/sites/7c2d15e3-e151-4029-8aa2-d4475296ba1c/filesystem/folders/%252Fusr
%252Ftest_user_sql%252Fmetallica%252F/permissions" } } }, "type": "folder" } }
PATCH PowerShell Sample
#
# renaming the virtual folder name
#
$update =
'{
"data": {
"attributes": {
"name": "metallica",
"subFolders": [],
"target": {
"type": "winFolder",
"winFolder": {
"path": "C:\\temp"
}
},
"uploadQuota": null
},
"id": "%2Fusr%2Ftest_user_sql%2Fmetallica%2F",
"type": "folder"
}
}'
$update = $update | ConvertFrom-Json
$update = $update | ConvertTo-Json -Depth 20
# update filesystem folders
Write-Output "patch filesystem folders"
Write-Output "-----"
$folderList = Invoke-RestMethod -Uri "$baseURL/v2/sites/$siteID/filesystem/folders/
%2fusr%2fdyelacic%2fmetallica%2f" -Method 'PATCH' -Headers $authHeader -Body $update
Write-Output $folderList | ConvertTo-Json
foreach ($user in $folderList.data)
{
Write-Output ("User $($user.id): $($user.attributes.loginName)")
}
Method & URL
DELETE https://[server URL]:[port]/admin/v2/sites/{siteId}/filesystem/folders/{folderid}
DELETE Body Sample
###
DELETE https://{{host}}/admin/v2/sites/{{Siteid}}/filesystem/folders/%2Fusr%2FFranklin%2F HTTP/1.1
Authorization: EFTAdminAuthToken {{AuthToken}}
###
DELETE Response Body Sample
HTTP/1.1 204 No Content Date: Thu, 10 Feb 2022 14:49:46 GMT Content-Length: 0
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
DELETE PowerShell Sample
Write-Output "delete filesystem folders"
Write-Output "-----"
$folderList = Invoke-RestMethod -Uri "$baseURL/v2/sites/$siteID/filesystem/folders/
%2Fusr%2Fdyelacic%2F" -Method 'DELETE' -Headers $authHeader
Write-Output $folderList | ConvertTo-Json
foreach ($user in $folderList.data)
{
Write-Output ("User $($user.id): $($user.attributes.loginName)")
}