Resource to get groups
List groups.
The result can be filtered by
id
name
description
id
name
description
name | type | description | default | constraints |
---|---|---|---|---|
page | query | Returned page, if paging is used. Paging starts with 1 |
1 | int |
pageSize | query | Page size for paging. If this is set to -1 no paging is used (all matching items are returned).
Setting this to 0 will return no items. |
-1 | int |
perms | query | Flag to add permission information for the returned items. | false | boolean |
q | query | Query string for filtering | ||
sort | query | Comma separated list of sorted attributes.
Each attribute name may be prefixed with + for sorting in ascending order or - for sorting in descending order |
name |
code | condition |
---|---|
401 | No valid sid and session secret cookie were provided. |
403 | User has insufficient permissions. |
media type | data type | description |
---|---|---|
application/json | GroupList (JSON) | list of groups |
GET /group
Content-Type: */*
Accept: application/json
...
HTTP/1.1 200 OK
Content-Type: application/json
{
"items" : [ { }, { } ],
"hasMoreItems" : true,
"numItems" : 12345,
"perms" : {
"property1" : [ "linkoverview", "deletefolder" ],
"property2" : [ "updateconstructs", "readtemplates" ]
},
"stagingStatus" : {
"property1" : {
"packageName" : "...",
"included" : true
},
"property2" : {
"packageName" : "...",
"included" : true
}
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Get a list of groups, optionally filtered sorted and paged.
name | type | description | default | constraints | multivalued |
---|---|---|---|---|---|
children | query | ids of child groups for the group(s) to return (filter) | int | yes | |
folder | query | ids of folders for filtering by folder permissions (together with "privileges") | int | yes | |
id | query | id of the group to return (filter) | int | yes | |
maxItems | query | maximum number of groups returned (paging) | -1 | int | no |
memberid | query | id of the group member for the group(s) to return (filter) | int | yes | |
memberlogin | query | login name of the group member for the group(s) to return (filter) | yes | ||
name | query | name or name pattern of the group(s) to return (filter) | yes | ||
perms | query | Flag to add permission information for the returned items. | false | boolean | no |
privileges | query | list of privileges for filtering by folder permissions (together with "folder") | "assignpermissions" or "createfile" or "createfolder" or "createpage" or "createtemplate" or "deletefile" or "deletefolder" or "deletepage" or "deletetemplate" or "importpage" or "inheritance" or "linktemplate" or "linkworkflow" or "publishpage" or "synchronizechannel" or "translatepage" or "updatefile" or "updatefolder" or "updatepage" or "updatetagtypes" or "updatetemplate" or "viewfile" or "viewfolder" or "viewpage" or "viewtemplate" or "wastebin" | yes | |
reduce | query | if set, the list of groups will be reduced: for nested groups, only parent group(s) or child group(s) will be returned | "child" or "parent" | no | |
skipCount | query | number of groups skipped in the list (paging) | 0 | int | no |
sortby | query | name of the sorted attribute (sorting) | "id" or "name" | no | |
sortorder | query | sortorder (sorting) | asc | "ASC" or "DESC" or "NONE" or "asc" or "desc" or "none" | no |
code | condition |
---|---|
401 | No valid sid and session secret cookie were provided. |
403 | User has insufficient permissions. |
media type | data type | description |
---|---|---|
application/json | GroupsResponse (JSON) | response containing the groups |
GET /group/list
Content-Type: */*
Accept: application/json
...
HTTP/1.1 200 OK
Content-Type: application/json
{
"groups" : [ {
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ { }, { } ]
}, {
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ { }, { } ]
} ],
"perms" : {
"property1" : [ "create", "updateform" ],
"property2" : [ "readtemplates", "deletefolder" ]
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Load the groups the user may see
name | type | description | default | constraints |
---|---|---|---|---|
perms | query | Flag to add permission information for the returned items. | false | boolean |
code | condition |
---|---|
401 | No valid sid and session secret cookie were provided. |
403 | User has insufficient permissions. |
media type | data type | description |
---|---|---|
application/json | GroupsResponse (JSON) | response containing groups |
GET /group/load
Content-Type: */*
Accept: application/json
...
HTTP/1.1 200 OK
Content-Type: application/json
{
"groups" : [ {
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ { }, { } ]
}, {
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ { }, { } ]
} ],
"perms" : {
"property1" : [ "create", "updateconstructs" ],
"property2" : [ "createform", "updateform" ]
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Delete a group
name | type | description |
---|---|---|
id | path | local group ID |
code | condition |
---|---|
204 | Group {id} was deactivated. |
404 | Group {id} does not exist. |
401 | No valid sid and session secret cookie were provided. |
403 | User has insufficient permissions. |
media type | data type | description |
---|---|---|
application/json | object (JSON) | empty response |
DELETE /group/{id}
Content-Type: */*
Accept: application/json
...
HTTP/1.1 204 No Content
Content-Type: application/json
...
Load group with given ID
name | type | description |
---|---|---|
id | path | local group ID |
code | condition |
---|---|
200 | Group {id} exists. |
404 | Group {id} does not exist. |
401 | No valid sid and session secret cookie were provided. |
403 | User has insufficient permissions. |
media type | data type | description |
---|---|---|
application/json | GroupLoadResponse (JSON) | group response |
GET /group/{id}
Content-Type: */*
Accept: application/json
...
HTTP/1.1 200 OK
Content-Type: application/json
{
"group" : {
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ { }, { } ]
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Update a group
name | type | description |
---|---|---|
id | path | local group ID |
media type | data type | description |
---|---|---|
application/json | Group (JSON) | new group data |
code | condition |
---|---|
200 | Group {id} was updated. |
404 | Group {id} does not exist. |
401 | No valid sid and session secret cookie were provided. |
403 | User has insufficient permissions. |
media type | data type | description |
---|---|---|
application/json | GroupLoadResponse (JSON) | updated group |
POST /group/{id}
Content-Type: application/json
Accept: application/json
{
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ {
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ { }, { } ]
}, {
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ { }, { } ]
} ]
}
HTTP/1.1 200 OK
Content-Type: application/json
{
"group" : {
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ { }, { } ]
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
List subgroups of the given group.
The result can be filtered by
id
name
description
id
name
description
name | type | description | default | constraints |
---|---|---|---|---|
id | path | local group ID | ||
page | query | Returned page, if paging is used. Paging starts with 1 |
1 | int |
pageSize | query | Page size for paging. If this is set to -1 no paging is used (all matching items are returned).
Setting this to 0 will return no items. |
-1 | int |
perms | query | Flag to add permission information for the returned items. | false | boolean |
q | query | Query string for filtering | ||
sort | query | Comma separated list of sorted attributes.
Each attribute name may be prefixed with + for sorting in ascending order or - for sorting in descending order |
name |
code | condition |
---|---|
200 | Group {id} exists. |
404 | Group {id} does not exist. |
401 | No valid sid and session secret cookie were provided. |
403 | User has insufficient permissions. |
media type | data type | description |
---|---|---|
application/json | GroupList (JSON) | list of subgroups |
GET /group/{id}/groups
Content-Type: */*
Accept: application/json
...
HTTP/1.1 200 OK
Content-Type: application/json
{
"items" : [ { }, { } ],
"hasMoreItems" : true,
"numItems" : 12345,
"perms" : {
"property1" : [ "view", "updateinheritance" ],
"property2" : [ "updateitems", "deletetemplates" ]
},
"stagingStatus" : {
"property1" : {
"packageName" : "...",
"included" : true
},
"property2" : {
"packageName" : "...",
"included" : true
}
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Create subgroup
name | type | description |
---|---|---|
id | path | local group ID |
media type | data type | description |
---|---|---|
application/json | Group (JSON) | group |
code | condition |
---|---|
201 | Group was created. |
404 | Group {id} does not exist. |
401 | No valid sid and session secret cookie were provided. |
403 | User has insufficient permissions. |
media type | data type | description |
---|---|---|
application/json | GroupLoadResponse (JSON) | created group |
PUT /group/{id}/groups
Content-Type: application/json
Accept: application/json
{
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ {
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ { }, { } ]
}, {
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ { }, { } ]
} ]
}
HTTP/1.1 201 Created
Content-Type: application/json
{
"group" : {
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ { }, { } ]
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Get permissions set for a group. If no parentType is given, only root-level permissions will be returned. Otherwise, the permissions on child types/instances of the given parentType/parentId will be returned.
name | type | description | constraints |
---|---|---|---|
id | path | group ID | |
channelId | query | optional channel ID | int |
parentId | query | optional parent ID | int |
parentType | query | optional parent type |
code | condition |
---|---|
401 | No valid sid and session secret cookie were provided. |
403 | User has insufficient permissions. |
media type | data type | description |
---|---|---|
application/json | TypePermissionList (JSON) | Permissions response |
GET /group/{id}/perms
Content-Type: */*
Accept: application/json
...
HTTP/1.1 200 OK
Content-Type: application/json
{
"items" : [ {
"type" : "...",
"id" : 12345,
"channelId" : 12345,
"label" : "...",
"description" : "...",
"perms" : [ {
"type" : "deletegroup",
"label" : "...",
"description" : "...",
"category" : "...",
"value" : true,
"editable" : true
}, {
"type" : "updatebundle",
"label" : "...",
"description" : "...",
"category" : "...",
"value" : true,
"editable" : true
} ],
"roles" : [ {
"id" : 12345,
"label" : "...",
"description" : "...",
"value" : true,
"editable" : true
}, {
"id" : 12345,
"label" : "...",
"description" : "...",
"value" : true,
"editable" : true
} ],
"children" : true,
"editable" : true
}, {
"type" : "...",
"id" : 12345,
"channelId" : 12345,
"label" : "...",
"description" : "...",
"perms" : [ {
"type" : "linktemplates",
"label" : "...",
"description" : "...",
"category" : "...",
"value" : true,
"editable" : true
}, {
"type" : "publishform",
"label" : "...",
"description" : "...",
"category" : "...",
"value" : true,
"editable" : true
} ],
"roles" : [ {
"id" : 12345,
"label" : "...",
"description" : "...",
"value" : true,
"editable" : true
}, {
"id" : 12345,
"label" : "...",
"description" : "...",
"value" : true,
"editable" : true
} ],
"children" : true,
"editable" : true
} ],
"hasMoreItems" : true,
"numItems" : 12345,
"perms" : {
"property1" : [ "deletetemplates", "updatetemplates" ],
"property2" : [ "deleteform", "linktemplates" ]
},
"stagingStatus" : {
"property1" : {
"packageName" : "...",
"included" : true
},
"property2" : {
"packageName" : "...",
"included" : true
}
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
List users of given group.
The result can be filtered by
id
login
firstName
lastName
email
id
login
firstName
lastName
email
name | type | description | default | constraints |
---|---|---|---|---|
id | path | local group ID | ||
page | query | Returned page, if paging is used. Paging starts with 1 |
1 | int |
pageSize | query | Page size for paging. If this is set to -1 no paging is used (all matching items are returned).
Setting this to 0 will return no items. |
-1 | int |
perms | query | Flag to add permission information for the returned items. | false | boolean |
q | query | Query string for filtering | ||
sort | query | Comma separated list of sorted attributes.
Each attribute name may be prefixed with + for sorting in ascending order or - for sorting in descending order |
name |
code | condition |
---|---|
200 | Group {id} exists. |
404 | Group {id} does not exist. |
401 | No valid sid and session secret cookie were provided. |
403 | User has insufficient permissions. |
media type | data type | description |
---|---|---|
application/json | UserList (JSON) | list of group members |
GET /group/{id}/users
Content-Type: */*
Accept: application/json
...
HTTP/1.1 200 OK
Content-Type: application/json
{
"items" : [ { }, { } ],
"hasMoreItems" : true,
"numItems" : 12345,
"perms" : {
"property1" : [ "translatepages", "delete" ],
"property2" : [ "createtemplates", "setperm" ]
},
"stagingStatus" : {
"property1" : {
"packageName" : "...",
"included" : true
},
"property2" : {
"packageName" : "...",
"included" : true
}
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Create user in the given group
name | type | description |
---|---|---|
id | path | local group ID |
media type | data type | description |
---|---|---|
application/json | User (JSON) | user to create |
code | condition |
---|---|
201 | User was created. |
404 | Group {id} does not exist. |
401 | No valid sid and session secret cookie were provided. |
403 | User has insufficient permissions. |
media type | data type | description |
---|---|---|
application/json | UserLoadResponse (JSON) | created user |
PUT /group/{id}/users
Content-Type: application/json
Accept: application/json
{
"id" : 12345,
"firstName" : "...",
"lastName" : "...",
"description" : "...",
"email" : "...",
"groups" : [ {
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ { }, { } ]
}, {
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ { }, { } ]
} ],
"login" : "...",
"password" : "..."
}
HTTP/1.1 201 Created
Content-Type: application/json
{
"user" : {
"id" : 12345,
"firstName" : "...",
"lastName" : "...",
"description" : "...",
"email" : "...",
"groups" : [ {
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ { }, { } ]
}, {
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ { }, { } ]
} ],
"login" : "...",
"password" : "..."
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Move subgroup
name | type | description |
---|---|---|
id | path | local mother group ID |
subgroupId | path |
code | condition |
---|---|
200 | Group was moved. |
404 | Group {id} or subgroup {subgroupId} does not exist. |
409 | Group {subgroupId} cannot be moved to group {id}. |
401 | No valid sid and session secret cookie were provided. |
403 | User has insufficient permissions. |
media type | data type | description |
---|---|---|
application/json | GroupLoadResponse (JSON) | created group |
PUT /group/{id}/groups/{subgroupId}
Content-Type: */*
Accept: application/json
...
HTTP/1.1 200 OK
Content-Type: application/json
{
"group" : {
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ { }, { } ]
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Get type permissions for a group
name | type | description |
---|---|---|
id | path | group ID |
type | path | type |
code | condition |
---|---|
401 | No valid sid and session secret cookie were provided. |
403 | User has insufficient permissions. |
media type | data type | description |
---|---|---|
application/json | TypePermissionResponse (JSON) | Permissions response |
GET /group/{id}/perms/{type}
Content-Type: */*
Accept: application/json
...
HTTP/1.1 200 OK
Content-Type: application/json
{
"perms" : [ {
"type" : "userassignment",
"label" : "...",
"description" : "...",
"category" : "...",
"value" : true,
"editable" : true
}, {
"type" : "formreport",
"label" : "...",
"description" : "...",
"category" : "...",
"value" : true,
"editable" : true
} ],
"roles" : [ {
"id" : 12345,
"label" : "...",
"description" : "...",
"value" : true,
"editable" : true
}, {
"id" : 12345,
"label" : "...",
"description" : "...",
"value" : true,
"editable" : true
} ],
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Set type permissions for a group
name | type | description | default | constraints |
---|---|---|---|---|
id | path | group ID | ||
type | path | type | ||
wait | query | wait timeout in milliseconds | 0 | long |
media type | data type | description |
---|---|---|
application/json | TypePermissionRequest (JSON) | request |
code | condition |
---|---|
401 | No valid sid and session secret cookie were provided. |
403 | User has insufficient permissions. |
media type | data type | description |
---|---|---|
application/json | GenericResponse (JSON) | response |
POST /group/{id}/perms/{type}
Content-Type: application/json
Accept: application/json
{
"perms" : [ {
"type" : "channelsync",
"label" : "...",
"description" : "...",
"category" : "...",
"value" : true,
"editable" : true
}, {
"type" : "creategroup",
"label" : "...",
"description" : "...",
"category" : "...",
"value" : true,
"editable" : true
} ],
"roles" : [ {
"id" : 12345,
"label" : "...",
"description" : "...",
"value" : true,
"editable" : true
}, {
"id" : 12345,
"label" : "...",
"description" : "...",
"value" : true,
"editable" : true
} ],
"subGroups" : true,
"subObjects" : true
}
HTTP/1.1 201 Created
Content-Type: application/json
{
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Remove user from a group
name | type | description |
---|---|---|
id | path | local group ID |
userId | path | local user ID |
code | condition |
---|---|
204 | User was removed. |
404 | Group {id} or user {userId} does not exist. |
401 | No valid sid and session secret cookie were provided. |
403 | User has insufficient permissions. |
media type | data type | description |
---|---|---|
application/json | object (JSON) | empty response |
DELETE /group/{id}/users/{userId}
Content-Type: */*
Accept: application/json
...
HTTP/1.1 204 No Content
Content-Type: application/json
...
Add existing user to the given group
name | type | description |
---|---|---|
id | path | local group ID |
userId | path | local user ID |
code | condition |
---|---|
200 | User was added. |
404 | Group {id} or user {userId} does not exist. |
401 | No valid sid and session secret cookie were provided. |
403 | User has insufficient permissions. |
media type | data type | description |
---|---|---|
application/json | UserLoadResponse (JSON) | user |
PUT /group/{id}/users/{userId}
Content-Type: */*
Accept: application/json
...
HTTP/1.1 200 OK
Content-Type: application/json
{
"user" : {
"id" : 12345,
"firstName" : "...",
"lastName" : "...",
"description" : "...",
"email" : "...",
"groups" : [ {
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ { }, { } ]
}, {
"id" : 12345,
"name" : "...",
"description" : "...",
"children" : [ { }, { } ]
} ],
"login" : "...",
"password" : "..."
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Get instance permissions for a group
name | type | description | constraints |
---|---|---|---|
id | path | group ID | |
instanceId | path | instance ID | int |
type | path | type |
code | condition |
---|---|
401 | No valid sid and session secret cookie were provided. |
403 | User has insufficient permissions. |
media type | data type | description |
---|---|---|
application/json | TypePermissionResponse (JSON) | Permissions response |
GET /group/{id}/perms/{type}/{instanceId}
Content-Type: */*
Accept: application/json
...
HTTP/1.1 200 OK
Content-Type: application/json
{
"perms" : [ {
"type" : "editimport",
"label" : "...",
"description" : "...",
"category" : "...",
"value" : true,
"editable" : true
}, {
"type" : "read",
"label" : "...",
"description" : "...",
"category" : "...",
"value" : true,
"editable" : true
} ],
"roles" : [ {
"id" : 12345,
"label" : "...",
"description" : "...",
"value" : true,
"editable" : true
}, {
"id" : 12345,
"label" : "...",
"description" : "...",
"value" : true,
"editable" : true
} ],
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Set instance permissions for a group
name | type | description | default | constraints |
---|---|---|---|---|
id | path | group ID | ||
instanceId | path | instance ID | int | |
type | path | type | ||
wait | query | wait timeout in milliseconds | 0 | long |
media type | data type | description |
---|---|---|
application/json | TypePermissionRequest (JSON) | request |
code | condition |
---|---|
401 | No valid sid and session secret cookie were provided. |
403 | User has insufficient permissions. |
media type | data type | description |
---|---|---|
application/json | GenericResponse (JSON) | response |
POST /group/{id}/perms/{type}/{instanceId}
Content-Type: application/json
Accept: application/json
{
"perms" : [ {
"type" : "updategroup",
"label" : "...",
"description" : "...",
"category" : "...",
"value" : true,
"editable" : true
}, {
"type" : "createoverview",
"label" : "...",
"description" : "...",
"category" : "...",
"value" : true,
"editable" : true
} ],
"roles" : [ {
"id" : 12345,
"label" : "...",
"description" : "...",
"value" : true,
"editable" : true
}, {
"id" : 12345,
"label" : "...",
"description" : "...",
"value" : true,
"editable" : true
} ],
"subGroups" : true,
"subObjects" : true
}
HTTP/1.1 201 Created
Content-Type: application/json
{
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}