@julienw I think that would imply many changes as we would need to introduce async functions. So I would allow to modify the id field. In the future we can create a new API function mozContact.remove that will receive an id as parameter. So my proposal would be to put on hold your patch in bug 951829 and land this code as it is. 

Please let us know