Improve 890b8e7

Also handle client (4xx) HTTP errors
Return actual instance or Error when an HTTP error occurs