You can register your own solution as long as it's sandboxed. Sandboxing has been deprecated in SP 2013 so going down the route of using the new App model is probably the best thing to do. Sandboxing would probably also prevent you from talking to an external service.
I would do an auto-hosted app and use a remote event receiver. Auto-hosting a quick to setup but requires Azure. If you can't use Azure, a provider hosted app would be your next choice.
More info about remote event receivers here: http://msdn.microsoft.com/en-us/library/jj220048.aspx.