code: def updateperms(self, user, action, groups):
          
          groups = self._listify(groups)
          if action == "rem":
              action = "remove"
          if action not in ["add", "remove", "set"]:
              raise BugzillaError("Unknown user permission action '%s'" % action)
  
          update = {
              "names": self._listify(user),
              "groups": {
                  action: groups,
              }
          }
  
          return self._proxy.User.update(update)
docs: A method to update the permissions (group membership) of a bugzilla
          user.
  
          :arg user: The e-mail address of the user to be acted upon. Can
              also be a list of emails.
          :arg action: add, remove, or set
          :arg groups: list of groups to be added to (i.e. ['fedora_contrib'])