> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bedrock.cv/llms.txt
> Use this file to discover all available pages before exploring further.

# 400 — Bad Request

> The request is invalid due to malformed syntax or failed validation.

```
Status: 400 Bad Request
Code:   BAD_REQUEST | VALIDATION_ERROR
Type:   https://docs.bedrock.cv/errors/bad-request
```

## Description

The request could not be processed because it is malformed or contains invalid values. There are two variants:

### Validation errors (`VALIDATION_ERROR`)

One or more fields in the request body are missing, have the wrong type, or contain out-of-range values. The response includes an `errors` object with field-level details.

```json theme={null}
{
  "type": "https://docs.bedrock.cv/errors/bad-request",
  "title": "Bad Request",
  "status": 400,
  "detail": "One or more request fields are invalid.",
  "code": "VALIDATION_ERROR",
  "request_id": "req_01JABCD123",
  "errors": {
    "overlay_id": ["Required field"],
    "options.confidence": ["Must be between 0 and 1"]
  }
}
```

### General bad requests (`BAD_REQUEST`)

The request has a structural or protocol-level issue. No `errors` object is included.

```json theme={null}
{
  "type": "https://docs.bedrock.cv/errors/bad-request",
  "title": "Bad Request",
  "status": 400,
  "detail": "Unsupported API version: 99. Supported versions: 1",
  "code": "BAD_REQUEST",
  "request_id": "req_01JABCD123"
}
```

## Common Causes

* Missing required fields in the request body
* Invalid field types (e.g., string where number expected)
* Values outside allowed ranges
* Malformed JSON in the request body
* Unsupported API version in `X-API-Version` header
* Request body exceeds maximum size

## Resolution

Check the `code` field to determine the variant. For `VALIDATION_ERROR`, inspect the `errors` object for specific field issues. For `BAD_REQUEST`, check the `detail` field for specifics.
