supports http errors