Endpoint: /sites/{siteId}/user-groups/{groupid}/relationships/users

NOTE: Available as of EFT 8.1.0

Provides the ability to return a user group’s details, update a permission group name or delete a user group.

  • POST

  • DELETE

Method & URL

POST https://[server URL]:[port]/admin/v2/sites/{siteId}/user-groups/{groupid}/relationships/users

POST Body Sample

Copy
###Get Users
# @name user
GET https://{{host}}/admin/v2/sites/{{Siteid}}/users 
HTTP/1.1
Authorization: EFTAdminAuthToken {{AuthToken}}
###
@userid = {{user.response.body.$.data[3].id}}
#Store a user into a variable to add to a group later

###
### Get List of all User's Permissions Groups for the Site####
# @name UGlist
GET https://{{host}}/admin/v2/sites/{{Siteid}}/user-groups 
HTTP/1.1
Authorization: EFTAdminAuthToken {{AuthToken}}
###
@groupid = {{UGlist.response.body.$.data[3].id}}
#Store a user group to add a user to this group later

### Add User(s) to specific Permission Group ###
POST https://{{host}}/admin/v2/sites/{{Siteid}}/user-groups/{{groupid}}
/relationships/users 
HTTP/1.1
Authorization: EFTAdminAuthToken {{AuthToken}}

{
  "data": [
    {
      "type": "user",
      "id": "{{userid}}"
    }
   ]
}

POST Response Body Sample

Copy
{ "data": [ 
{ "type": "user", "id": "b90be871-86ff-4060-b3cc-007903dff7f7", "meta": 
{ "name": "Ivan" 
} } ] }

POST PowerShell Sample

Copy
##
#Get User Permission Groups
$userGroups = Invoke-RestMethod -Uri "$baseURL/v2/sites/$siteID/user-groups" 
-Method 'GET' -Headers $authHeader
foreach ($userGroups in $userGroups.id)
{
Write-Output ("User Permission Group found:  $($userGroups.id): 
$($userGroups.attributes.name)") 
}
$userGroupID = $userGroups.data[3].id

###
#POST Selected User in Selected User Permission Group
Write-Output "POST (Add) User to Selected User Permissions Group"
Write-Output "-----"
$update = 
'{
  "data": [
    {
      "type": "user",
      "id": "b90be871-86ff-4060-b3cc-007903dff7f7"
    }
   ]
}'

$update = $update | ConvertFrom-Json
$update = $update | ConvertTo-Json -Depth 10
$patchReturn = Invoke-RestMethod -Uri "$baseURL/v2/sites/$siteID/user-groups/
$userGroupID/relationships/users" -Method 'POST' -Headers $authHeader -Body $update

Method & URL

DELETE https://[server URL]:[port]/admin/v2/sites/{siteId}/user-groups/{groupid}/relationships/users

DELETE Body Sample

Copy
###Get Users
# @name user
GET https://{{host}}/admin/v2/sites/{{Siteid}}/users HTTP/1.1
Authorization: EFTAdminAuthToken {{AuthToken}}
###
@userid = {{user.response.body.$.data[3].id}}
#Store a user into a variable in order to add to a group later

###
### Get List of all User's Permissions Groups for the Site####
# @name UGlist
GET https://{{host}}/admin/v2/sites/{{Siteid}}/user-groups HTTP/1.1
Authorization: EFTAdminAuthToken {{AuthToken}}
###
@groupid = {{UGlist.response.body.$.data[3].id}}
#Store a user group in order to add a user to this group later

### Delete User(s) from specific Permission Group ###
Delete https://{{host}}/admin/v2/sites/{{Siteid}}/user-groups/
{{groupid}}/relationships/users HTTP/1.1
Authorization: EFTAdminAuthToken {{AuthToken}}

{
  "data": [
    {
      "type": "user",
      "id": "{{userid}}"
    }
  ]
}

DELETE Response Body Sample

Copy
HTTP/1.1 200 OK Date: Sat, 23 Jul 2022 01:47:11 GMT Content-Type: application/vnd.api+json 
Content-Length: 11 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": [] }

DELETE PowerShell Sample

Copy
##
#Get User Permission Groups
$userGroups = Invoke-RestMethod -Uri "$baseURL/v2/sites/$siteID/user-groups" 
-Method 'GET' -Headers $authHeader
foreach ($userGroups in $userGroups.id)
{
Write-Output ("User Permission Group found:  $($userGroups.id): 
$($userGroups.attributes.name)") 
}
$userGroupID = $userGroups.data[3].id

#Delete User from User Permission Group
Write-Output "Deleting User from User Permission Group: "
Write-Output "-----"
$update = 
'{
  "data": [
    {
      "type": "user",
      "id": "b90be871-86ff-4060-b3cc-007903dff7f7"
    }
   ]
}'

$update = $update | ConvertFrom-Json
$update = $update | ConvertTo-Json -Depth 10
$commandList = Invoke-RestMethod -Uri "$baseURL/v2/sites/$siteID/user-groups/
$userGroupID/relationships/users" 
-Method 'DELETE' -Headers $authHeader -Body $update