hooks on events versus synchronizing to call a web service

Are there any event "hooks" to allow one to fire off something (some code) or web service call when an event is added/updated/modified?

I'm trying to scope a bit of development work for a client who wants to be able to "sync" up third party billing system with some information when a Zimbra event is added. The specific example is, they add an event in the calendar, and it adds the event in the other system.

The system/web-app on the other side speaks web services fine, and my current thoughts are to use the Zimbra synchronization (Zimbra/docs/soap.txt: Synchronize and newer: ZimbraServer/docs/sync.txt), but don't want it to get too complex if it doesn't need to be.

If I used the sync method and just found changes/deltas, I would need to design my glue to poll Zimbra for recently added events, which wouldn't be that bad, but before I continue, I just wanted to see if there's a way to get event level hooks so as soon as an event or contact or anything is added/updated/deleted, I could do the relatively same action on the other system.