# BadRequestHttpException

> BadRequestHttpException represents a "Bad Request" HTTP exception with status code 400.

[API reference](/docs/api/index.md) › [yii](/docs/api/yii/index.md) › [web](/docs/api/yii/web/index.md) › BadRequestHttpException

| class | `yii\web\BadRequestHttpException` |
| --- | --- |
| Extends | [`HttpException`](/docs/api/yii/web/httpexception/index.md) » [`yii\base\UserException`](/docs/api/yii/base/userexception/index.md) » [`yii\base\Exception`](/docs/api/yii/base/exception/index.md) » [`Exception`](https://www.php.net/manual/en/class.exception.php) |
| Since | 2.0 |
| Source | [`framework/web/BadRequestHttpException.php`](https://github.com/yiisoft/yii2/blob/22.0/framework/web/BadRequestHttpException.php#L23) |

BadRequestHttpException represents a "Bad Request" HTTP exception with status code 400.

Use this exception to represent a generic client error. In many cases, there
may be an HTTP exception that more precisely describes the error. In that
case, consider using the more precise exception to provide the user with
additional information.

See also: <https://tools.ietf.org/html/rfc7231#section-6.5.1>.

## Properties

| Property | Type | Description | Defined by |
| --- | --- | --- | --- |
| <span id="property-statusCode"></span>[`$statusCode`](/docs/api/yii/web/httpexception/index.md#property-statusCode) | `int` | HTTP status code, such as 403, 404, 500, etc. Default: `null`. | [`HttpException`](/docs/api/yii/web/httpexception/index.md) |

## Methods

| Method | Description | Defined by |
| --- | --- | --- |
| [`__construct()`](#method-__construct) | Constructor. | `BadRequestHttpException` |
| <span id="method-getName"></span>[`getName()`](/docs/api/yii/web/httpexception/index.md#method-getName) |  | [`HttpException`](/docs/api/yii/web/httpexception/index.md) |

## Method details

### __construct() <span id="method-__construct"></span>

```php
public function __construct(string|null $message = null, int $code = 0, Throwable|null $previous = null)
```

Constructor.

**Parameters**

| Parameter | Type | Description |
| --- | --- | --- |
| `$message` | `string\|null` | Error message |
| `$code` | `int` | Error code |
| `$previous` | [`Throwable`](https://www.php.net/manual/en/class.throwable.php)`\|null` | The previous exception used for the exception chaining. |