Really nothing to do this the promise will pass everything back.  We could extract data from the failed HTTP request and return it in a different format (so that callers do not need to handle the HTTP stuff ) but that seems like another pull (for showing the login error)