# Validate a query
**POST /{index}/_validate/query**
**All methods and paths for this operation:**
GET
/_validate/query
POST
/_validate/query
GET
/{index}/_validate/query
POST
/{index}/_validate/query
Validates a query without running it.
## Servers
- http://api.example.com: http://api.example.com ()
## Authentication methods
- Api key auth
- Basic auth
- Bearer auth
## Parameters
### Path parameters
- **index** (string | array[string])
Comma-separated list of data streams, indices, and aliases to search.
Supports wildcards (`*`).
To search all data streams or indices, omit this parameter or use `*` or `_all`.
### Query parameters
- **allow_no_indices** (boolean)
If `false`, the request returns an error if any wildcard expression, index alias, or `_all` value targets only missing or closed indices.
This behavior applies even if the request targets other open indices.
- **all_shards** (boolean)
If `true`, the validation is executed on all shards instead of one random shard per index.
- **analyzer** (string)
Analyzer to use for the query string.
This parameter can only be used when the `q` query string parameter is specified.
- **analyze_wildcard** (boolean)
If `true`, wildcard and prefix queries are analyzed.
- **default_operator** (string)
The default operator for query string query: `and` or `or`.
- **df** (string)
Field to use as default where no field prefix is given in the query string.
This parameter can only be used when the `q` query string parameter is specified.
- **expand_wildcards** (string | array[string])
Type of index that wildcard patterns can match.
If the request can target data streams, this argument determines whether wildcard expressions match hidden data streams.
Supports comma-separated values, such as `open,hidden`.
Supported values include:
- `all`: Match any data stream or index, including hidden ones.
- `open`: Match open, non-hidden indices. Also matches any non-hidden data stream.
- `closed`: Match closed, non-hidden indices. Also matches any non-hidden data stream. Data streams cannot be closed.
- `hidden`: Match hidden data streams and hidden indices. Must be combined with `open`, `closed`, or `both`.
- `none`: Wildcard expressions are not accepted.
- **explain** (boolean)
If `true`, the response returns detailed information if an error has occurred.
- **ignore_unavailable** (boolean)
If `false`, the request returns an error if it targets a missing or closed index.
- **lenient** (boolean)
If `true`, format-based query failures (such as providing text to a numeric field) in the query string will be ignored.
- **rewrite** (boolean)
If `true`, returns a more detailed explanation showing the actual Lucene query that will be executed.
- **q** (string)
Query in the Lucene query string syntax.
### Body: application/json (object)
- **query** (object)
Query in the Lucene query string syntax.
## Responses
### 200
#### Body: application/json (object)
- **explanations** (array[object])
- **_shards** (object)
- **valid** (boolean)
- **error** (string)
[Powered by Bump.sh](https://bump.sh)