Overview

public. Retrieve list of groups.

Uri Parameters

None

Query Parameters
NameTypeDescription
authenticatebool?Force authentication for request (default: false)
authproviderint?Return groups belonging to given authentication service id
groupnamefilterstring?Search for groups by name or part of a name
limitint?Number of entries to retrieve. Default: 100
offsetint?Number of entries to skip. Default: 0
sortby{id, name, role, service}?Sort field. Prefix value with '-' to sort descending. default: No sorting
Return Codes
NameValueDescription
BadRequest400Invalid input parameter or request body
Forbidden403Read access is required
Ok200Request completed successfully

Message Format

Output:

<groups count="{int}" href="{uri}">
    <group id="{int}" href="{uri}">
        <groupname>{text}</groupname> 
        <service.authentication id="{int}" href="{uri}" /> 
        <users count="{int}" href="{uri}" /> 
        <permissions.group>
            <operations mask="{int}">{text}</operations> 
            <role id="{int}" href="{uri}">{text}</role> 
        </permissions.group>
    </group>
</groups>

Implementation Notes

Groups provide the ability to associate a collection of users with a predefined role.  Use GET:site/roles to retrieve a list of all roles currently defined on the site.

Use POST:groups to add or modify a group and DELETE:groups/{groupid} to remove a specified group.

Code Samples

The following code example retrieves all groups defined for the site:

Plug p = Plug.New("http://deki-hayes/@api/deki");
p.At("users", "authenticate").WithCredentials("admin", "password").Get();
p.At("groups").Get();

Sample response indicating that there is one group.  This group is associated with the local authentication service, contains one user, and has the Contributor role:

<groups count="1" href="http://deki-hayes/@api/deki/groups">
    <group id="1" href="http://deki-hayes/@api/deki/groups/1">
        <groupname>My Contributors Group</groupname> 
        <service.authentication id="1" href="http://deki-hayes/@api/deki/site/services/1" /> 
        <users count="1" href="http://deki-hayes/@api/deki/groups/1/users" /> 
        <permissions.group>
            <operations mask="1343">LOGIN,BROWSE,READ,SUBSCRIBE,UPDATE,CREATE,DELETE,CHANGEPERMISSIONS</operations> 
            <role id="4" href="http://deki-hayes/@api/deki/site/roles/4">Contributor</role> 
        </permissions.group>
    </group>
</groups>
Tag page
You must login to post a comment.