Query
Defines a query parameter for a FastAPI path operation, allowing for the configuration of metadata, validation constraints, and OpenAPI schema documentation. It supports various validations such as string length, numeric ranges, and regex patterns while providing options for aliases and deprecation status.
def Query(
default: Any = Undefined,
default_factory: Callable[[], Any] | None = _Unset,
alias: str | None = null,
alias_priority: int | None = _Unset,
validation_alias: str | AliasPath | AliasChoices | None = null,
serialization_alias: str | None = null,
title: str | None = null,
description: str | None = null,
gt: float | None = null,
ge: float | None = null,
lt: float | None = null,
le: float | None = null,
min_length: int | None = null,
max_length: int | None = null,
pattern: str | None = null,
regex: str | None = null,
discriminator: str | None = null,
strict: bool | None = _Unset,
multiple_of: float | None = _Unset,
allow_inf_nan: bool | None = _Unset,
max_digits: int | None = _Unset,
decimal_places: int | None = _Unset,
examples: list[Any] | None = null,
example: Any | None = _Unset,
openapi_examples: dict[str, Example] | None = null,
deprecated: deprecated | str | bool | None = null,
include_in_schema: bool = true,
json_schema_extra: dict[str, Any] | None = null
) - > Any
Declares a query parameter for an API endpoint, providing metadata and validation rules for incoming request data.
Parameters
| Name | Type | Description |
|---|---|---|
| default | Any = Undefined | The default value to use if the query parameter is not provided in the request. |
| default_factory | `Callable[[], Any] | None` = _Unset |
| alias | `str | None` = null |
| alias_priority | `int | None` = _Unset |
| validation_alias | `str | AliasPath |
| serialization_alias | `str | None` = null |
| title | `str | None` = null |
| description | `str | None` = null |
| gt | `float | None` = null |
| ge | `float | None` = null |
| lt | `float | None` = null |
| le | `float | None` = null |
| min_length | `int | None` = null |
| max_length | `int | None` = null |
| pattern | `str | None` = null |
| regex | `str | None` = null |
| discriminator | `str | None` = null |
| strict | `bool | None` = _Unset |
| multiple_of | `float | None` = _Unset |
| allow_inf_nan | `bool | None` = _Unset |
| max_digits | `int | None` = _Unset |
| decimal_places | `int | None` = _Unset |
| examples | `list[Any] | None` = null |
| example | `Any | None` = _Unset |
| openapi_examples | `dict[str, Example] | None` = null |
| deprecated | `deprecated | str |
| include_in_schema | bool = true | Controls whether this parameter is visible in the generated OpenAPI documentation. |
| json_schema_extra | `dict[str, Any] | None` = null |
Returns
| Type | Description |
|---|---|
Any | A parameter metadata object used by FastAPI to handle query string extraction and validation. |