One way I have solved this issue is to look for the Accept header. If no valid formatting options are available in the Accept header look for a query string parameter.
To me this is vital. Being able to explore an api within an browser makes it exponentially easier to understand and use.
To me this is vital. Being able to explore an api within an browser makes it exponentially easier to understand and use.