thanks, I ended with this and it seems to be working now:
def remove_subscriber(self, email):
"""Remove subscriber. We can not use `api.user.delete` as, by
default, it tries to remove member areas and local roles; the
later consumes a lot of memory and is not necessary for us.
"""
membership_tool = api.portal.get_tool('portal_membership')
with api.env.adopt_roles(['Manager']):
membership_tool.deleteMembers(
[email], delete_memberareas=False, delete_localroles=False)