support Accepts: json header to return json