---
title: Отправить HTML-форму
description: Закодируйте поля как application/x-www-form-urlencoded.
sources:
- eazy_sdk.request.Form
api_fingerprint: "sha256:57cc49a702463f8a149b91c9dbfafbc8fb6b8bdb6c7e5112ccc1d43813aab03e"
---
Используйте `Form[T]` для входа через HTML-форму и других методов, которые принимают
`application/x-www-form-urlencoded`.
:::::{grid} 1 1 2 2
:class-container: http-exchange
:gutter: 2
::::{grid-item}
:class: http-panel http-panel--request
**→ Request** · ``POST /login``
```text
Content-Type: application/x-www-form-urlencoded
email=ada%40mail.example&password=mail-password
```
::::
::::{grid-item}
:class: http-panel http-panel--response
**← Response** · ``200 OK``
```json
{"account": "ada@mail.example", "access_token": "session-1"}
```
::::
:::::
```{literalinclude} ../../../../../../examples/docs/request_form.py
:language: python
:start-after: "# docs:example:start"
:end-before: "# docs:example:end"
```
`email` и `password` обязательны. `remember=UNSET` не добавляет поле в тело. Для одной модели
целиком используйте `FormBody()` и не смешивайте её с отдельными полями `Form`.
:::{dropdown} Файл примера целиком
```{literalinclude} ../../../../../../examples/docs/request_form.py
:language: python
```
:::
Запуск: `uv run python examples/docs/request_form.py`.
```text
session: ada@mail.example session-1
```
## Дальше
- {doc}`Опишите многошаговый вход `.
- {doc}`Отправьте файл через multipart `.