Updating member role in a conversation
Through the WireApplicationManager you can update a member's role in a conversation, such as promoting them to admin or demoting them to a regular member.
note
To update member roles, make sure the conversation is a group or channel, and that the app has admin permissions in the conversation.
Available roles
The ConversationRole enum provides two main roles:
- ADMIN — Full permissions including managing members and conversation settings
- MEMBER — Standard participant with basic messaging permissions
Use Case: Promote a member to admin
- Kotlin
- Java
val applicationManager = wireAppSdk.getApplicationManager()
val myConversationId = QualifiedId(
id = UUID.fromString("conversation-id"),
domain = "conversation-domain.com"
)
val memberToPromote = QualifiedId(
id = UUID.fromString("member-user-id"),
domain = "member-domain.com"
)
applicationManager.updateConversationMemberRoleSuspending(
conversationId = myConversationId,
userId = memberToPromote,
newRole = ConversationRole.ADMIN
)
WireApplicationManager applicationManager = wireAppSdk.getApplicationManager();
QualifiedId myConversationId = new QualifiedId(
UUID.fromString("conversation-id"),
"conversation-domain.com"
);
QualifiedId memberToPromote = new QualifiedId(
UUID.fromString("member-user-id"),
"member-domain.com"
);
applicationManager.updateConversationMemberRole(
myConversationId,
memberToPromote,
ConversationRole.ADMIN
);
Use Case: Demote an admin to member
- Kotlin
- Java
applicationManager.updateConversationMemberRoleSuspending(
conversationId = myConversationId,
userId = memberToDemote,
newRole = ConversationRole.MEMBER
)
applicationManager.updateConversationMemberRole(
myConversationId,
memberToDemote,
ConversationRole.MEMBER
);