BadRequestError should be a subclass of InvalidStatusError
pass the expected status to the exception for more useful information