While it makes sense to retry http requests on timeout or 5xx, 4xx is unlikely to be temporary, so retrying just delays the inevitable.