Endpoint: /sites/{siteId}/user-groups
NOTE: Available as of EFT 8.1.0
Provides the ability to return a list of user permissions groups for a specific EFT site or create a new permission group.
-
GET
-
POST
Method & URL
GET https://[server URL]:[port]/admin/v2/sites/{siteId}/user-groups
GET Body Sample
Copy
### Get List of all User's Permissions Groups for the Site####
#
GET https://{{host}}/admin/v2/sites/{{Siteid}}/user-groups HTTP/1.1
Authorization: EFTAdminAuthToken {{AuthToken}}
###
GET Response Body Sample
Copy
{ "data": [
{ "type": "userGroup",
"id": "a0db9377-92a3-4a38-8c0f-09f268d78ff1",
"attributes": { "name": "All Users" },
"relationships": { "users": { "data": [ { "type": "user", "id":
"b90be871-86ff-4060-b3cc-007903dff7f7", "meta":
{ "name": "Ivan" } },
{ "type": "user", "id": "953bcb67-fa8c-44e2-a056-ecfb5080d13c", "meta":
{ "name": "TestUser" } } ] } },
"links": { "self": "/admin/v2/sites/c7d3ecfe-a100-4bcd-b830-01a10524c048/user-groups/
a0db9377-92a3-4a38-8c0f-09f268d78ff1" } },
{ "type": "userGroup", "id": "07caceb2-6698-4ef7-baeb-f437fec972a2", "attributes":
{ "name": "Administrators" }, "relationships": { "users":
{ "data": [] } }, "links": { "self":
"/admin/v2/sites/c7d3ecfe-a100-4bcd-b830-01a10524c048/
user-groups/07caceb2-6698-4ef7-baeb-f437fec972a2"
} }, { "type": "userGroup", "id": "b8448b77-01d8-47d5-8ee7-9f407c95e39f", "attributes":
{ "name": "Guests" }, "relationships": { "users": { "data": [] } }, "links":
{ "self": "/admin/v2/sites/c7d3ecfe-a100-4bcd-b830-01a10524c048/
user-groups/b8448b77-01d8-47d5-8ee7-9f407c95e39f" } } ] }
GET PowerShell Sample
Copy
# Get sites
Write-Output "Site"
Write-Output "----"
$siteList = Invoke-RestMethod -Uri "$baseURL/v2/sites"
-Method 'GET' -Headers $authHeader
Write-Output $siteList | ConvertTo-Json
foreach ($site in $siteList.data)
{
Write-Output ("Site $($site.id): $($site.attributes.name)")
}
$siteID = $siteList.data[0].id
##########
#Get User Permission Groups
Write-Output "Get User Permission Groups"
Write-Output "-----"
$userGroups = Invoke-RestMethod -Uri "$baseURL/v2/sites/$siteID/user-groups"
-Method 'GET' -Headers $authHeader
Write-Output $userGroups | ConvertTo-Json -Depth 10
Method & URL
POST https://[server URL]:[port]/admin/v2/sites/{siteId}/user-groups
POST Body Sample
Copy
### Create User Permission Group ###
POST https://{{host}}/admin/v2/sites/{{Siteid}}/user-groups HTTP/1.1
Authorization: EFTAdminAuthToken {{AuthToken}}
{
"data": {
"type": "userGroup",
"attributes": {
"name": "QA_API_User_Group_TEST"
}
}
}
POST Response Body Sample
Copy
{ "data": { "type": "userGroup", "id": "1ba8c63f-6e37-4783-b556-be5bf831dc6c",
"attributes": { "name": "QA_API_User_Group_TEST" }, "relationships": { "users": { "data": [] } },
"links": { "self":
"/admin/v2/sites/c7d3ecfe-a100-4bcd-b830-01a10524c048/user-groups/1ba8c63f-6e37-4783-b556-be5bf831dc6c" } } }
POST PowerShell Sample
Copy
#POST New Permission Group
Write-Output "POST User Permissions Group (New Permission Group)"
Write-Output "-----"
$update =
'{
"data": {
"type": "userGroup",
"attributes": {
"name": "QA_API_User_Group_TEST"
}
}
}'
$update = $update | ConvertFrom-Json
$update = $update | ConvertTo-Json -Depth 10
$patchReturn = Invoke-RestMethod -Uri
"$baseURL/v2/sites/$siteID/user-groups" -Method 'POST'
-Headers $authHeader -Body $update