Browse SDKs · iOS
Platform
SDKsiOS

Set or remove an administrator

Set or remove a group administrator with OpenIM iOS SDK.

Copy

Invoke setGroupMemberRoleLevel:userID:roleLevel:onSuccess:onFailure: to promote a regular member to administrator or demote an administrator to a regular member (only the group owner has permission to perform this action):

Parameters

ParameterTypeRequiredDescription
groupIDNSString *YesTarget group ID.
userIDNSString *YesTarget member user ID.
roleLevelOIMGroupMemberRoleYesDesired role level enumeration.

Role level enumeration

Enumeration valueNumeric valueDescription
OIMGroupMemberRoleMember20Regular member (used to remove administrator status).
OIMGroupMemberRoleAdmin60Administrator (used to grant administrator privileges).

Code example

[[OIMManager manager] setGroupMemberRoleLevel:@"group_1001"
                                      userID:@"user_002"
                                   roleLevel:OIMGroupMemberRoleAdmin
                                   onSuccess:^(NSString * _Nullable data) {
                                       NSLog(@"setGroupMemberRoleLevel success");
                                   }
                                   onFailure:^(NSInteger code, NSString *message) {
                                       NSLog(@"setGroupMemberRoleLevel failed: %ld %@", (long)code, message);
                                   }];

Return value

The onSuccess callback returns confirmation when the server accepts the role change.

State changes after the call

  1. Role update restrictions: Group ownership cannot be modified using this method; to transfer ownership, call Transfer group ownership.
  2. Event notification: Role changes broadcast across active clients via onGroupMemberInfoChanged:. The client updates the member's role attribute matching groupID:userID.
  3. Re-query calibration: For administration queries, refer to Retrieve the group owner and administrators.