+ [ ] Extract all content type handling to one place + [ ] Return detailed error message about invalid content type + [ ] Support custom content type (?)