As MArkWilliams said.
However I also use the URI service (e.g. when data has "disappeared" from the API data set) so if you find out who could fix this I'd be interested in it working as you'd expect.
What I found when I tested:
Data type is normally set via content negotiation (as documented at https://www.gov.uk/government/uploads/system/uploads/attachment_data/file/426891/uniformResourceIdentifiersCustomerGuide.pdf). So (e.g. using curl):
curl --header "Accept: application/json" "http://data.companieshouse.gov.uk/doc/company/SC002180"
...returns json formatted response, and
curl --header "Accept: application/xml" "http://data.companieshouse.gov.uk/doc/company/SC002180"
Adding the appropriate file extension to the company number also does this as you say e.g. http://data.companieshouse.gov.uk/doc/company/SC002180.csv
Whichever method to specify format it seems you get HTML back if there's an error.
I tried this for different error types: