Param
This class serves as a base for defining request parameters, extending metadata capabilities for data validation and OpenAPI schema generation. It supports a wide range of constraints such as numeric limits, string patterns, and metadata like titles, descriptions, and examples. By inheriting from field information structures, it integrates seamlessly with validation and serialization workflows.
Attributes
| Attribute | Type | Description |
|---|---|---|
| in_ | [ParamTypes](paramtypes.md?sid=fastapi_params_paramtypes) | The location of the parameter in the HTTP request, defined by the ParamTypes enum. |
Constructor
Signature
def Param(
default: Any = Undefined,
default_factory: Callable[[], Any]| None = _Unset,
annotation: Any | None = None,
alias: str | None = None,
alias_priority: int | None = _Unset,
validation_alias: str | AliasPath | AliasChoices | None = None,
serialization_alias: str | None = None,
title: str | None = None,
description: str | None = None,
gt: float | None = None,
ge: float | None = None,
lt: float | None = None,
le: float | None = None,
min_length: int | None = None,
max_length: int | None = None,
pattern: str | None = None,
regex: str | None = None,
discriminator: str | None = None,
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 = None,
example: Any | None = _Unset,
openapi_examples: dict[str, [Example](../openapi/models/example.md?sid=fastapi_openapi_models_example)]| None = None,
deprecated: deprecated | str | bool | None = None,
include_in_schema: bool = True,
json_schema_extra: dict[str, Any]| None = None,
extra: Any
) - > null
Parameters
| Name | Type | Description |
|---|---|---|
| default | Any = Undefined | The default value for the parameter. |
| default_factory | `Callable[[], Any] | None` = _Unset |
| annotation | `Any | None` = None |
| alias | `str | None` = None |
| alias_priority | `int | None` = _Unset |
| validation_alias | `str | AliasPath |
| serialization_alias | `str | None` = None |
| title | `str | None` = None |
| description | `str | None` = None |
| gt | `float | None` = None |
| ge | `float | None` = None |
| lt | `float | None` = None |
| le | `float | None` = None |
| min_length | `int | None` = None |
| max_length | `int | None` = None |
| pattern | `str | None` = None |
| regex | `str | None` = None |
| discriminator | `str | None` = None |
| 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` = None |
| example | `Any | None` = _Unset |
| openapi_examples | `dict[str, Example] | None` = None |
| deprecated | `deprecated | str |
| include_in_schema | bool = True | Whether to include this parameter in the generated JSON schema. |
| json_schema_extra | `dict[str, Any] | None` = None |
| extra | Any | Additional keyword arguments. |
Signature
def Param(
default: Any = Undefined,
default_factory: Callable[[], Any]| None = _Unset,
annotation: Any | None = None,
alias: str | None = None,
alias_priority: int | None = _Unset,
validation_alias: str | AliasPath | AliasChoices | None = None,
serialization_alias: str | None = None,
title: str | None = None,
description: str | None = None,
gt: float | None = None,
ge: float | None = None,
lt: float | None = None,
le: float | None = None,
min_length: int | None = None,
max_length: int | None = None,
pattern: str | None = None,
regex: str | None = None,
discriminator: str | None = None,
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 = None,
example: Any | None = _Unset,
openapi_examples: dict[str, [Example](../openapi/models/example.md?sid=fastapi_openapi_models_example)]| None = None,
deprecated: deprecated | str | bool | None = None,
include_in_schema: bool = True,
json_schema_extra: dict[str, Any]| None = None,
extra: Any
) - > null
Parameters
| Name | Type | Description |
|---|---|---|
| default | Any = Undefined | The fixed default value to use if the parameter is not provided in the request. |
| default_factory | `Callable[[], Any] | None` = _Unset |
| annotation | `Any | None` = None |
| alias | `str | None` = None |
| alias_priority | `int | None` = _Unset |
| validation_alias | `str | AliasPath |
| serialization_alias | `str | None` = None |
| title | `str | None` = None |
| description | `str | None` = None |
| gt | `float | None` = None |
| ge | `float | None` = None |
| lt | `float | None` = None |
| le | `float | None` = None |
| min_length | `int | None` = None |
| max_length | `int | None` = None |
| pattern | `str | None` = None |
| regex | `str | None` = None |
| discriminator | `str | None` = None |
| 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` = None |
| example | `Any | None` = _Unset |
| openapi_examples | `dict[str, Example] | None` = None |
| deprecated | `deprecated | str |
| include_in_schema | bool = True | Whether this parameter should be visible in the generated OpenAPI/JSON schema. |
| json_schema_extra | `dict[str, Any] | None` = None |
| extra | Any | Arbitrary keyword arguments for additional metadata or custom configuration. |