The way the old API operated was useful in scenarios when performing a "sync" operation from another system, such as a CMDB. For example, we have all our contacts, media and notification rules defined in our CMDB, and run a build sync job to create/update/delete those in flapjack.
With the new JSON API, and the corresponding flapjack-diner library, we're no longer able to perform this same type of "sync" operation. We'll need to write code to pull all the existing contacts, media, and rules and make decisions for each as whether we should create, update or delete the contact, media and rules.
This initially sounds like a reasonable amount of work, so I figured I'd get something filed. @jessereynolds mentioned he was working on some code to do this, and I'm looking at doing the same. Preferably, it would be great to have this part of the flapjack-diner package so it can be easily reused/collaborated on.