v4.0 Groups API
TrueSight Network Automation REST API – GroupService
The base URL for the API is:
groups
{{status subtle="false" colour="Blue" title="GET"/}}
/v4.0/groups
Click here to expand...
Description
Retrieves groups, matching any filter criteria or view, with the returned result being abbreviated or partially-detailed groups; may filter by filterable group dynamic fields by including query parameters in the form 'filter.dynamicFieldName=value'
Parameters
Name | Located in | Description | Default | Schema |
---|---|---|---|---|
query | Filter for groups matching this name, asterisk wildcards allowed | string | ||
filter.realm | query | Filter for groups that belong to this realm, either by exact name or by database key | string | |
filter.staticGroups | query | Filter for static groups or non-static groups; when true, returns only static groups; when false, returns only non-static groups; when this filter is absent, no filtering is done | boolean | |
filter.autoGroups | query | Filter for auto-groups or non-auto-groups; when true, returns only auto-groups; when false, returns only non-auto-groups; when this filter is absent, no filtering is done | boolean | |
filter.emptyAutoGroups | query | Filter for empty auto-groups or non-empty auto-groups; when true, returns both auto-groups and empty auto-groups; when false, returns all the groups except for the empty auto-groups; when this filter is absent, no filtering is done; This can be set only when filter.autoGroup is set to true | boolean | |
filter.action | query | Filter for groups where the user is allowed to perform this action, by action GUID | string | |
view | query | Filter for groups per the named private or shared view; any input filter.* or orderBy parameters override those settings in the view | string | |
orderBy | query | Sort by the specified attribute (name, realm, deviceCount, autoGroupFlag,or a listable group dynamic field name) in the specified order (prefix with a '+' for ascending or a '-' for descending) | string | |
offset | query | Return the specified page number | 1 | integer |
limit | query | Define the number of rows in a page or the maximum number of groups to return | 25 | integer |
Authorization | header | Authorization token formatted as 'Bearer [token]' | string * |
Responses
Code | Description | Schema |
---|---|---|
200 | successful operation | |
400 | Bad Request: The filter.staticGroups and filter.autoGroups query parameters cannot both be false, as that will match no groups. | |
401 | Unauthorized: Failed to provide a suitable Authorization header or accessToken cookie, or the specified user is not logged in | |
403 | Forbidden: Not allowed to access groups | |
404 | Not found: No matching view found | |
500 | Internal server error: Unexpected exception occurred |
{{status subtle="false" colour="Green" title="POST"/}}
/v4.0/groups
Click here to expand...
Parameters
Name | Located in | Description | Default | Schema |
---|---|---|---|---|
body | body | Complete attributes of the new group | ||
Authorization | header | Authorization token formatted as 'Bearer [token]' | string * |
Responses
Code | Description | Schema |
---|---|---|
201 | Created: New group successfully added | |
400 | Bad request: Input group DTO is missing or new group is invalid | |
401 | Unauthorized: Failed to provide a suitable Authorization header or accessToken cookie, or the specified user is not logged in | |
403 | Forbidden: Not allowed to add a new group or not allowed to specify an ACL | |
500 | Internal server error: Unexpected exception occurred |
{{status subtle="false" colour="Green" title="POST"/}}
/v4.0/groups/changes_to_acls
Click here to expand...
Parameters
Name | Located in | Description | Default | Schema |
---|---|---|---|---|
body | body | Changes to be made in the access control lists | ||
Authorization | header | Authorization token formatted as 'Bearer [token]' | string * |
Responses
Code | Description | Schema |
---|---|---|
200 | OK: Access control lists updated successfully | |
400 | Bad request: Group access control lists are not enabled, input DTO is missing or invalid, or a modified group is invalid | |
401 | Unauthorized: Failed to provide a suitable Authorization header or accessToken cookie, or the specified user is not logged in | |
403 | Forbidden: Not allowed to manage the access control lists of groups,not allowed to modify a particular group, or not allowed to grant or revoke a particular right | |
500 | Internal server error: Unexpected exception occurred |
{{status subtle="false" colour="Blue" title="GET"/}}
/v4.0/groups/custom_rights_management_information
Click here to expand...
Parameters
Name | Located in | Description | Default | Schema |
---|---|---|---|---|
realmNameOrKey | query | Name or database key of the realm that the group of interest belongs to; required when retrieving information useful for managing rights in a single group ACL with multiple roles while editing a group; when null, retrieves information useful for managing rights across all groups | string | |
Authorization | header | Authorization token formatted as 'Bearer [token]' | string * |
Responses
Code | Description | Schema |
---|---|---|
200 | successful operation | |
400 | Bad request: Group access control lists are not enabled | |
401 | Unauthorized: Failed to provide a suitable Authorization header or accessToken cookie, or the specified user is not logged in | |
404 | Not found: No single matching accessible realm found | |
500 | Internal server error: Unexpected exception occurred |
{{status subtle="false" colour="Yellow" title="PUT"/}}
/v4.0/groups/{id}
Click here to expand...
Parameters
Name | Located in | Description | Default | Schema |
---|---|---|---|---|
id | path | Database key of the group to be modified | string * | |
body | body | Complete new attribute values for the group; anything left out will be considered to be null and will be nulled out in the group; any required dynamic fields missing or null in the input will revert to default values; to change the realm a group belongs to, must first remove all devices from the group | ||
Authorization | header | Authorization token formatted as 'Bearer [token]' | string * |
Responses
Code | Description | Schema |
---|---|---|
200 | successful operation | |
400 | Bad request: Input group DTO is missing, modified group is invalid, or attempted to make an invalid type of change (such as renaming an auto-group); see error message for details | |
401 | Unauthorized: Failed to provide a suitable Authorization header or accessToken cookie, or the specified user is not logged in | |
403 | Forbidden: Not allowed to modify the group or not allowed to modify the ACL | |
404 | Not found: No single matching accessible group found | |
500 | Internal server error: Unexpected exception occurred |
{{status subtle="false" colour="Red" title="DELETE"/}}
/v4.0/groups/{id}
Click here to expand...
Parameters
Name | Located in | Description | Default | Schema |
---|---|---|---|---|
id | path | Database key of the group to be deleted | string * | |
Authorization | header | Authorization token formatted as 'Bearer [token]' | string * |
Responses
Code | Description | Schema |
---|---|---|
200 | successful operation | string |
400 | Bad request: group is currently in use or is a non-empty auto-group | |
401 | Unauthorized: Failed to provide a suitable Authorization header or accessToken cookie, or the specified user is not logged in | |
403 | Forbidden: Not allowed to delete the group | |
404 | Not found: No single matching accessible group found | |
500 | Internal server error: Unexpected exception occurred |
{{status subtle="false" colour="Yellow" title="PATCH"/}}
/v4.0/groups/{id}
Click here to expand...
Parameters
Name | Located in | Description | Default | Schema |
---|---|---|---|---|
id | path | Database key of the group to be modified | string * | |
body | body | New attribute values for the group, in JSON Patch format | ||
Authorization | header | Authorization token formatted as 'Bearer [token]' | string * |
Responses
Code | Description | Schema |
---|---|---|
200 | successful operation | |
400 | Bad request: Input JSON patch information is missing, modified group is invalid, or attempted to make an invalid type of change (such as renaming an auto-group); see error message for details | |
401 | Unauthorized: Failed to provide a suitable Authorization header or accessToken cookie, or the specified user is not logged in | |
403 | Forbidden: Not allowed to modify the group or not allowed to modify the ACL | |
404 | Not found: No single matching accessible group found | |
500 | Internal server error: Unexpected exception occurred |
{{status subtle="false" colour="Blue" title="GET"/}}
/v4.0/groups/{id}/devices
Click here to expand...
Parameters
Name | Located in | Description | Default | Schema |
---|---|---|---|---|
id | path | Database key of the group of interest | string * | |
Authorization | header | Authorization token formatted as 'Bearer [token]' | string * |
Responses
Code | Description | Schema |
---|---|---|
200 | successful operation | |
401 | Unauthorized: Failed to provide a suitable Authorization header or accessToken cookie, or the specified user is not logged in | |
403 | Forbidden: Not allowed to access groups | |
404 | Not found: No single matching accessible group found | |
500 | Internal server error: Unexpected exception occurred |
{{status subtle="false" colour="Yellow" title="PUT"/}}
/v4.0/groups/{id}/devices
Click here to expand...
Description
Updates the group to have the exact specified device members; any input device that is not already a member of the group is added to the group; any current member device that is not in the input list is removed from the group; an event is logged for each device moved in to or out of the group; note that this can be a lengthy request, as configuration profiled dynamic fields and compliance status must be updated to reflect the changes to the group membership
Parameters
Name | Located in | Description | Default | Schema |
---|---|---|---|---|
id | path | Database key of the group of interest | string * | |
body | body | The devices that are to make up the member devices of the group, replacing the current members of the group (so devices are added to and removed from the group as needed); can be an empty list to remove all current member devices from the group | [ | |
Authorization | header | Authorization token formatted as 'Bearer [token]' | string * |
Responses
Code | Description | Schema |
---|---|---|
200 | successful operation | string |
400 | Bad request: A device database name or key is not valid, a device is not in the same realm as the group, or attempted to update an auto-group | |
401 | Unauthorized: Failed to provide a suitable Authorization header or accessToken cookie, or the specified user is not logged in | |
403 | Forbidden: Not allowed to modify the group | |
404 | Not found: No single matching accessible group found | |
500 | Internal server error: Unexpected exception occurred |
{{status subtle="false" colour="Yellow" title="PUT"/}}
/v4.0/groups/{id}/devices/{deviceId}
Click here to expand...
Parameters
Name | Located in | Description | Default | Schema |
---|---|---|---|---|
id | path | Database key of the group of interest | string * | |
deviceId | path | Database key of the device to be added to the group | string * | |
Authorization | header | Authorization token formatted as 'Bearer [token]' | string * |
Responses
Code | Description | Schema |
---|---|---|
200 | successful operation | string |
400 | Bad request: Device database key is not valid, device is not in the same realm as the group, or attempted to add a device to an auto-group | |
401 | Unauthorized: Failed to provide a suitable Authorization header or accessToken cookie, or the specified user is not logged in | |
403 | Forbidden: Not allowed to modify the group | |
404 | Not found: No single matching accessible group found, or no single matching accessible device found | |
500 | Internal server error: Unexpected exception occurred |
{{status subtle="false" colour="Red" title="DELETE"/}}
/v4.0/groups/{id}/devices/{deviceId}
Click here to expand...
Parameters
Name | Located in | Description | Default | Schema |
---|---|---|---|---|
id | path | Database key of the group of interest | string * | |
deviceId | path | Database key of the device to be removed from the group | string * | |
Authorization | header | Authorization token formatted as 'Bearer [token]' | string * |
Responses
Code | Description | Schema |
---|---|---|
200 | successful operation | string |
400 | Bad request: Device database key is not valid, device is not a member of the group, or attempted to remove a device from an auto-group | |
401 | Unauthorized: Failed to provide a suitable Authorization header or accessToken cookie, or the specified user is not logged in | |
403 | Forbidden: Not allowed to modify the group | |
404 | Not found: No single matching accessible group found, or no single matching accessible device found | |
500 | Internal server error: Unexpected exception occurred |
{{status subtle="false" colour="Blue" title="GET"/}}
/v4.0/groups/{nameOrKey}
Click here to expand...
Parameters
Name | Located in | Description | Default | Schema |
---|---|---|---|---|
nameOrKey | path | Name or database key of the group of interest; a name must be unique across all realms for a group to be returned | string * | |
Authorization | header | Authorization token formatted as 'Bearer [token]' | string * |
Responses
Code | Description | Schema |
---|---|---|
200 | successful operation | |
401 | Unauthorized: Failed to provide a suitable Authorization header or accessToken cookie, or the specified user is not logged in | |
403 | Forbidden: Not allowed to access groups | |
404 | Not found: No single matching accessible group found | |
500 | Internal server error: Unexpected exception occurred |
Object Definitions
Object | Schema |
---|---|
AbbreviatedDeviceDTO | Click here to expand...{ |
AbbreviatedGroupDTO | Click here to expand...{ |
AclChangesDTO | Click here to expand...{ |
AclDTO | Click here to expand...{ |
ComponentId | Click here to expand...{ |
CustomRightsManagementDTO | Click here to expand...{ |
DynamicFieldValueDTO | Click here to expand...{ |
GroupDTO | Click here to expand...{
|
JsonPatch | Click here to expand...[ |
JsonPatch.OneOperation | Click here to expand... |
JsonPatch.Pointer | Click here to expand...string |
JsonPatch.Add | Click here to expand...{ |
JsonPatch.Remove | Click here to expand...{ |
JsonPatch.Replace | Click here to expand...{ |
JsonPatch.Move | Click here to expand...{ |
JsonPatch.Copy | Click here to expand...{ |
JsonPatch.Test | Click here to expand...{ |
PerRoleRightsDTO | Click here to expand...{ |