The documentation page https://developer.companieshouse.gov.uk/api/docs/index/gettingStarted/apikey_authorisation.html states:
Sending the API key
The Companies House API uses HTTP Basic Authentication to transmit an API key between the client application and the server. Basic authentication is usually made up of a username and password pair; the Companies House API takes the username as the API key and ignores the password, so can be left blank.
This is not true from my experience - it requires a blank password. If you put in a password it fails with an authentication issue.
I will log a seperate issue - but salesforce struggles with no password, meaning I have to code more heavily the the solution to make it work with no password.