We are implementing a webhook solution and I have some questions.
We are mainly at this stage focusing on webhooks for contact and person.
We have defined the following webhooks:
contact.created (Fire and works ok)
contact.changed (Fire and works ok)
contact.deleted (does not fire, when does this fire?)
person.created (Fire and works ok)
person.changed (fire and works ok)
person.deleted (does not fire, when does this fire?)
We sure want the abilty to add support for:
service.extratable.<TableName> .created/changed/deleted as well but not possible yet if I have understand correctly.
So my question is one does contact.delteted and person.deleted fire?
We have discovered that when a contact or person is deleted from the system in the GUI a:
contact.changed / person.changed fires with som extra payload ( deleteddate).
That is logical since the contact/person is softdeleted. (ends up in the recylcebin)
What I think maybe is a bug, is that no contact.deleted / person.deleted is fired when the recyclebin is cleaned up by the system when background serivce does the hard delete. (eg removing the entry from the database)
If that had occured it would have solved our problem I think.
Another solution would have been to add a special event for the soft delete part.
contact.softdeleted / person.softdeleted and maybe change the contact.deleted / person.deleted to:
contact.harddeleted / person.harddeleted (fired when cleanup process run)
what I also found out when testing was that performing a restore from recyclebin a contact.chagend / person.changed is fired. That is logical since the delteddate is removed (making the entry visible in the GUI again)
Can someone share some thought about when contact.deleted / person.deleted webhooks are fired ?
Tests where performed in the 8.5 R04 version of SuperOffice.