Flex Conversations use Conversations API roles to manage participant permissions when adding participants to a Conversation or when using the Conversations SDK to connect.
The Role Resource represents what a User (e.g. agent, admin, supervisor) can do within the Conversation Service and individual Conversations. Roles are scoped to either a Service or a Conversation.
Users are assigned a Role at the Service level. This determines what they can do within the Conversation Service instance, such as creating and destroying Conversations within the Service.
Participants are assigned a Role at the Conversation level. This determines what they are able to do within a particular Conversation, such as inviting Participants to be members of the Conversation, posting Messages, and removing other Participants from the Conversation.
Flex creates the Conversation Service and adds the following Service and Conversation Roles during the initial Flex account setup.
Role: admin
Default Permissions:
Role: supervisor
Default Permissions:
Role: guest [DEFAULT]
Default Permissions:
Role: agent
Default Permissions:
Role: admin
Default Permissions:
Role: supervisor
Default Permissions:
The first time a worker logs in, Flex creates a corresponding Conversation User.
Once a worker logs in successfully, the Flex UI initializes the Conversations SDK with a token that includes the grants: