---
title: "GET /roles"
method: GET
path: "/roles"
tags: ["Roles"]
---

# GET /roles

`GET /roles`

## Request

- Base URL: `https://api.cxxx.eagleeyenetworks.com/api/v3.0`
- URL: `https://api.cxxx.eagleeyenetworks.com/api/v3.0/roles`
- Auth: HTTP bearer

This endpoint returns a list of all roles in current user's account.

## Query parameters

- `id__in` string[]
- `roleName__contains` string
- `include` string[]
- `pageToken` string
- `pageSize` integer

## Response `200`

List of roles.

- ApiPaginatedRoleResponse: Used to wrap results for a paginated response, containing information on how to retrieve further pages.
  - `nextPageToken` string, nullable, required: Token to retrieve the next page. The value of this token is passed into the field pageToken. This value can be null if there is no next page.
  - `prevPageToken` string, nullable, required: Token to retrieve the previous page. The value of this token is passed into the field pageToken. This value can be null of there is no previous page.
  - `results` object[], required: The result set from a collection API call.
    - `id` string, uuid, required: The ID of the role.
    - `assignable` boolean: True if the user doing the request can assign this role to other users, false otherwise.
    - `userCount` integer: Count of users that are associated with this role in the account
    - `name` string, required: The name of the role.
    - `notes` string: The notes of the role.
    - `default` boolean, required: True if the role is one of the default roles for the account, false otherwise.
    - `permissions` Permissions
      - `administrator` boolean: All permissions are enabled - create, delete, edit, and view access to all accounts and user settings, bridges, cameras, layouts, audit log and archive.
      - `editAccounts` boolean: Edit Control, Days, Security, Camera, Alerts, Notifications, Privacy, Sharing, Responders, Default retentions, and camera resolution settings.
      - `layoutAdministrator` boolean: Create, delete and edit any accessible layouts. All user layouts are visible to admin users.
      - `createLayouts` boolean: Ability to create layouts and edit the layouts created. This does not grant permission to edit layouts created by other users.
      - `editNoBillingDeviceSettings` boolean: Edit Camera Settings except for Cloud Retention and Full Video Resolution. Cannot add or delete cameras. Edit existing Analytics. Cannot add or delete Analytics.
      - `turnCamerasOnOff` boolean: Turn Cameras on/off. Cameras off cannot be recorded.
      - `editMotionAreas` boolean: Edit Motion Settings. Set object size and sensitivity, add/delete regions, add/delete alerts for regions. Edit existing Analytics. Set object size and sensitivity, add/delete alerts.
      - `editAllCameraSettings` boolean: Editing all Camera Settings. Cannot add or delete cameras.
      - `editUsers` boolean: Create, delete and edit non-admin users in an end user account.
      - `upgradeEdition` boolean: Upgrade current edition subscription to a higher level edition.
      - `addEditBridgesCameras` boolean: Create, delete, edit, and view Bridges and Cameras. This is the only permission for a non-admin to be able to add and view bridges in an end user account.
      - `editSharing` boolean: Edit Sharing and Responders settings.
      - `controlPTZ` boolean: Control Pan, Tilt, Zoom, & recall stations while viewing a preview or live video of PTZ cameras.
      - `editPTZStations` boolean: Edit PTZ Settings. Set PTZ mode and create, delete, edit stations.
      - `addEditSpeakers` boolean: Add speakers, edit speaker settings, delete speakers.
      - `editSpeakers` boolean: Edit speaker settings. Cannot add or delete speakers.
      - `viewLiveVideo` boolean: View full resolution video live.
      - `viewHistoricVideo` boolean: View history browser and historic video.
      - `downloadVideo` boolean: Download preview and full resolution video.
      - `viewPreviewVideo` boolean: View preview images from cameras.
      - `talkDown` boolean: Allows the users to initiate Talk Down to the camera field(s) of view.
      - `editMap` boolean: Add and edit floors, lines, shapes, and cameras on the map.
      - `viewAuditLog` boolean: View Audit Log and download reports from it.
      - `viewArchive` boolean: View all files and folders within the Archive.
      - `editArchive` boolean: Save videos to Archive - delete, edit, and view files and folders within the Archive.
      - `viewPlugins` boolean: View all Plugins.
      - `editPlugins` boolean: Add and remove plugins.
      - `exportUsers` boolean: Export a list of account users in .csv format.
      - `viewVSP` boolean: User access to view vehicle data, search vehicle across camera & location, set rules, and alert.
      - `editResellerUsers` boolean: Create, delete and edit reseller user who is not an Admin.
      - `editAdminUsers` boolean: Create, delete and edit admin and non-admin users in an end user account. Give access to bridges, cameras, and layouts. Create new end user accounts and give access to them.
      - `viewContract` boolean: View recordings, search, and create new recordings.
      - `addRemovePayment` boolean: Add and remove payment methods.
      - `viewInvoice` boolean: View and download invoices.
      - `placeOrders` boolean: Add products to the shopping cart and place orders.
      - `viewShipments` boolean: View the status of shipments.
      - `viewPricingInformation` boolean: View pricing information.
      - `viewResellerProgramInformation` boolean: View Marketing's reseller program information.
      - `viewVSPRule` boolean: View VSP rules.
      - `editVSPRule` boolean: Edit VSP rules.
      - `viewVehicleList` boolean: View vehicle lists.
      - `editVehicleList` boolean: Edit vehicle lists.
      - `viewAutomations` boolean: View automation alerts, rules, and actions.
      - `editAutomations` boolean: Edit automation alerts, rules, and actions.
      - `editAlertManagerRulesAndActions` boolean: Edit Automations rules and actions.
      - `viewAlertManagerRulesAndActions` boolean: View Alert Manager rules and actions.
  - `totalSize` integer, required: Size of the total result set.

## Other responses

- `400`: The supplied object is invalid. Error detail will contain the validation error.
- `401`: You are not authenticated. Please authenticate and try again.
- `500`: Something went wrong in the server. Please try again.

---

[API](https://skmtc.dev/eagleeyenetworks/apis/user-accounts.md) - [All operations](https://skmtc.dev/eagleeyenetworks/apis/user-accounts/llms.txt) - [OpenAPI document](https://skmtc.dev/eagleeyenetworks/apis/user-accounts/revisions/e6bfa6544945?raw)
