presentation.routers.api.v1.password_resets¶
src.presentation.routers.api.v1.password_resets
¶
Password resets resource handlers.
Handler functions for password reset endpoints. Routes are registered via ROUTE_REGISTRY in routes/registry.py.
Handlers
create_password_reset_token - Create password reset token (request reset) create_password_reset - Create password reset (execute reset)
Classes¶
Functions¶
create_password_reset_token
async
¶
create_password_reset_token(
request: Request,
data: PasswordResetTokenCreateRequest,
handler: RequestPasswordResetHandler = Depends(
handler_factory(RequestPasswordResetHandler)
),
) -> PasswordResetTokenCreateResponse
Create password reset token (request reset).
POST /api/v1/password-reset-tokens → 201 Created
Sends a password reset email if the account exists. Always returns success to prevent user enumeration attacks.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
request
|
Request
|
FastAPI request object. |
required |
data
|
PasswordResetTokenCreateRequest
|
Password reset token request (email). |
required |
handler
|
RequestPasswordResetHandler
|
Request password reset handler (injected). |
Depends(handler_factory(RequestPasswordResetHandler))
|
Returns:
| Type | Description |
|---|---|
PasswordResetTokenCreateResponse
|
PasswordResetTokenCreateResponse (always 201 for security). |
Source code in src/presentation/routers/api/v1/password_resets.py
create_password_reset
async
¶
create_password_reset(
request: Request,
data: PasswordResetCreateRequest,
handler: ConfirmPasswordResetHandler = Depends(
handler_factory(ConfirmPasswordResetHandler)
),
) -> PasswordResetCreateResponse | JSONResponse
Create password reset (execute reset).
POST /api/v1/password-resets → 201 Created
Resets user's password using the token from email. All existing sessions are revoked (user must re-login).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
request
|
Request
|
FastAPI request object. |
required |
data
|
PasswordResetCreateRequest
|
Password reset request (token, new_password). |
required |
handler
|
ConfirmPasswordResetHandler
|
Confirm password reset handler (injected). |
Depends(handler_factory(ConfirmPasswordResetHandler))
|
Returns:
| Type | Description |
|---|---|
PasswordResetCreateResponse | JSONResponse
|
PasswordResetCreateResponse on success (201 Created). |
PasswordResetCreateResponse | JSONResponse
|
JSONResponse with error on failure (400/404). |