Implemented different response types based on accept headers