Yes, as you noticed below, I've  put in place something similar to what you're describing for the custom error mechanism with the ErrorResponse exception: cf https://github.com/antoviaque/languagelearning/blob/api-search-googletranslate/utils/api.py#L26

In this particular case, the custom exception is used to display the raw exception message, as the googletranslate.py lib doesn't do a lot of error handling, so I figured we'd probably want to not crash the request if there was a bug there. But your comments made me realize this could be improved by doing this from the `dispatch()` method instead, to catch all exceptions without custom handling in the individual API methods. 

See if you like how I approached this: https://github.com/antoviaque/languagelearning/commit/498d462ed7b6dcefe47ff63cbc8d8feba54e96fb