Returns all the roles used in a project
This call requires a project id as a path parameter, and it returns an array of all the roles used in that project. Note that a role is different from a role template. A role template, such as “Uploader,” is a reusable set of permissions that can be applied to multiple users. A “role” refers to a unique instance in which a role template is applied to a specific user on a specific project.
The response contains every role that has been used in a project, including roles that are no longer in use. For example, if a user’s role changes from Role A to Role B, both roles are included in the response. Roles associated with deactivated users are also included.
Here is an overview of the properties returned for each role:
|id||The id of the role. A role corresponds to an instance in which a role template is applied to a specific user on a specific project.|
|displayName||The name of the role as it is displayed in the MediaSilo UI; for example: “Uploader” or “Public Collaborator”|
|description||A description of the role. This matches the description of the role template as it appears under the Roles tab in Administration.|
|context||This is the project id you enter as a path parameter|
|roleTemplateId||The id of the role template used to create the role|
|level||This value is “OWNER” for a role of Project Owner. All other roles are “USER.”|
|permissionGroups||This object contains the individual permissions associated with a role.|
|permissionGroups.displayName and permissionGroups.groupIdentifier||These properties indicate a permission’s category. Permissions to view, upload, download, edit, and delete assets belong to the ASSET category. Internal and external sharing permissions belong to the SHARING category.
Project Owner is the only role that contains values for COLLABORATION, REPORTING, and SERVICE. This role is unique because it is the only one that allows users and managers to edit a project’s settings and add or remove users from a project.
|permissionGroups.permissions||These are the individual permissions a role has been granted.
There are five asset-related permissions: Create (Upload), Delete, Source (Download), Read (View), and Update (Edit).
The two sharing permissions are Internal and External. A user can have internal sharing permission, or they can have internal and external sharing permissions. There is no option for external-only sharing permission.