spakky-fastapi¶
FastAPI 통합 — 라우트 데코레이터, 자동 엔드포인트 등록
Routes¶
spakky.plugins.fastapi.routes.route
¶
Base route decorator and configuration for FastAPI endpoints.
Provides the core @route decorator and Route annotation class that can be used to mark controller methods as API endpoints with full FastAPI configuration.
HTTPMethod
¶
Route(path, response_model=None, status_code=None, tags=None, dependencies=None, summary=None, description=None, response_description='Successful Response', responses=None, deprecated=None, methods=None, operation_id=None, response_model_include=None, response_model_exclude=None, response_model_by_alias=True, response_model_exclude_unset=False, response_model_exclude_defaults=False, response_model_exclude_none=False, include_in_schema=True, response_class=JSONResponse, name=None, route_class_override=None, callbacks=None, openapi_extra=None)
dataclass
¶
Bases: FunctionAnnotation
Function annotation for marking methods as API routes.
Stores all FastAPI route configuration including path, HTTP methods, response models, and OpenAPI documentation settings.
Attributes:
| Name | Type | Description |
|---|---|---|
path |
str
|
The URL path for this route. |
response_model |
type[Any] | None
|
Pydantic model for response serialization. |
status_code |
int | None
|
HTTP status code for successful responses. |
tags |
list[str] | None
|
OpenAPI tags for grouping endpoints. |
dependencies |
Sequence[Depends] | None
|
FastAPI dependencies to inject. |
summary |
str | None
|
Short summary for OpenAPI documentation. |
description |
str | None
|
Detailed description for OpenAPI documentation. |
response_description |
str
|
Description of successful response. |
responses |
dict[int | str, dict[str, Any]] | None
|
Additional response schemas for OpenAPI. |
deprecated |
bool | None
|
Whether this endpoint is deprecated. |
methods |
set[HTTPMethod] | list[HTTPMethod] | None
|
HTTP methods this route handles. |
operation_id |
str | None
|
Custom OpenAPI operation ID. |
response_model_include |
SetIntStr | DictIntStrAny | None
|
Fields to include in response model. |
response_model_exclude |
SetIntStr | DictIntStrAny | None
|
Fields to exclude from response model. |
response_model_by_alias |
bool
|
Use field aliases in response. |
response_model_exclude_unset |
bool
|
Exclude unset fields from response. |
response_model_exclude_defaults |
bool
|
Exclude fields with default values. |
response_model_exclude_none |
bool
|
Exclude None values from response. |
include_in_schema |
bool
|
Include in OpenAPI schema. |
response_class |
type[Response]
|
FastAPI response class to use. |
name |
str | None
|
Display name for the route. |
route_class_override |
type[APIRoute] | None
|
Custom APIRoute class. |
callbacks |
list[Route] | None
|
OpenAPI callbacks configuration. |
openapi_extra |
dict[str, Any] | None
|
Additional OpenAPI schema data. |
route(path, response_model=None, status_code=None, tags=None, dependencies=None, summary=None, description=None, response_description='Successful Response', responses=None, deprecated=None, methods=None, operation_id=None, response_model_include=None, response_model_exclude=None, response_model_by_alias=True, response_model_exclude_unset=False, response_model_exclude_defaults=False, response_model_exclude_none=False, include_in_schema=True, response_class=JSONResponse, name=None, route_class_override=None, callbacks=None, openapi_extra=None)
¶
Decorator to mark a controller method as an API route.
Attaches route configuration to the method which will be registered by the RegisterRoutesPostProcessor during container initialization.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
str
|
The URL path for this route. |
required |
response_model
|
type[Any] | None
|
Pydantic model for response serialization. |
None
|
status_code
|
int | None
|
HTTP status code for successful responses. |
None
|
tags
|
list[str] | None
|
OpenAPI tags for grouping endpoints. |
None
|
dependencies
|
Sequence[Depends] | None
|
FastAPI dependencies to inject. |
None
|
summary
|
str | None
|
Short summary for OpenAPI documentation. |
None
|
description
|
str | None
|
Detailed description for OpenAPI documentation. |
None
|
response_description
|
str
|
Description of successful response. |
'Successful Response'
|
responses
|
dict[int | str, dict[str, Any]] | None
|
Additional response schemas for OpenAPI. |
None
|
deprecated
|
bool | None
|
Whether this endpoint is deprecated. |
None
|
methods
|
set[HTTPMethod] | list[HTTPMethod] | None
|
HTTP methods this route handles. |
None
|
operation_id
|
str | None
|
Custom OpenAPI operation ID. |
None
|
response_model_include
|
SetIntStr | DictIntStrAny | None
|
Fields to include in response model. |
None
|
response_model_exclude
|
SetIntStr | DictIntStrAny | None
|
Fields to exclude from response model. |
None
|
response_model_by_alias
|
bool
|
Use field aliases in response. |
True
|
response_model_exclude_unset
|
bool
|
Exclude unset fields from response. |
False
|
response_model_exclude_defaults
|
bool
|
Exclude fields with default values. |
False
|
response_model_exclude_none
|
bool
|
Exclude None values from response. |
False
|
include_in_schema
|
bool
|
Include in OpenAPI schema. |
True
|
response_class
|
type[Response]
|
FastAPI response class to use. |
JSONResponse
|
name
|
str | None
|
Display name for the route. |
None
|
route_class_override
|
type[APIRoute] | None
|
Custom APIRoute class. |
None
|
callbacks
|
list[Route] | None
|
OpenAPI callbacks configuration. |
None
|
openapi_extra
|
dict[str, Any] | None
|
Additional OpenAPI schema data. |
None
|
Returns:
| Type | Description |
|---|---|
Callable[[Callable[..., AnyT]], Callable[..., AnyT]]
|
A decorator function that attaches the route configuration. |
Source code in plugins/spakky-fastapi/src/spakky/plugins/fastapi/routes/route.py
100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 | |
options: show_root_heading: false
spakky.plugins.fastapi.routes.get
¶
GET route decorator for FastAPI controllers.
Provides a convenience decorator for marking controller methods as HTTP GET endpoints with full FastAPI configuration support.
get(path, response_model=None, status_code=None, tags=None, dependencies=None, summary=None, description=None, response_description='Successful Response', responses=None, deprecated=None, operation_id=None, response_model_include=None, response_model_exclude=None, response_model_by_alias=True, response_model_exclude_unset=False, response_model_exclude_defaults=False, response_model_exclude_none=False, include_in_schema=True, response_class=JSONResponse, name=None, route_class_override=None, callbacks=None, openapi_extra=None)
¶
Decorator to mark a controller method as an HTTP GET endpoint.
Convenience wrapper around @route that automatically sets the HTTP method to GET. Supports all FastAPI route configuration options.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
str
|
The URL path for this route. |
required |
response_model
|
type[Any] | None
|
Pydantic model for response serialization. |
None
|
status_code
|
int | None
|
HTTP status code for successful responses. |
None
|
tags
|
list[str] | None
|
OpenAPI tags for grouping endpoints. |
None
|
dependencies
|
Sequence[Depends] | None
|
FastAPI dependencies to inject. |
None
|
summary
|
str | None
|
Short summary for OpenAPI documentation. |
None
|
description
|
str | None
|
Detailed description for OpenAPI documentation. |
None
|
response_description
|
str
|
Description of successful response. |
'Successful Response'
|
responses
|
dict[int | str, dict[str, Any]] | None
|
Additional response schemas for OpenAPI. |
None
|
deprecated
|
bool | None
|
Whether this endpoint is deprecated. |
None
|
operation_id
|
str | None
|
Custom OpenAPI operation ID. |
None
|
response_model_include
|
SetIntStr | DictIntStrAny | None
|
Fields to include in response model. |
None
|
response_model_exclude
|
SetIntStr | DictIntStrAny | None
|
Fields to exclude from response model. |
None
|
response_model_by_alias
|
bool
|
Use field aliases in response. |
True
|
response_model_exclude_unset
|
bool
|
Exclude unset fields from response. |
False
|
response_model_exclude_defaults
|
bool
|
Exclude fields with default values. |
False
|
response_model_exclude_none
|
bool
|
Exclude None values from response. |
False
|
include_in_schema
|
bool
|
Include in OpenAPI schema. |
True
|
response_class
|
type[Response]
|
FastAPI response class to use. |
JSONResponse
|
name
|
str | None
|
Display name for the route. |
None
|
route_class_override
|
type[APIRoute] | None
|
Custom APIRoute class. |
None
|
callbacks
|
list[Route] | None
|
OpenAPI callbacks configuration. |
None
|
openapi_extra
|
dict[str, Any] | None
|
Additional OpenAPI schema data. |
None
|
Returns:
| Type | Description |
|---|---|
Callable[[Callable[..., AnyT]], Callable[..., AnyT]]
|
A decorator function that marks the method as a GET endpoint. |
Source code in plugins/spakky-fastapi/src/spakky/plugins/fastapi/routes/get.py
options: show_root_heading: false
spakky.plugins.fastapi.routes.post
¶
POST route decorator for FastAPI controllers.
Provides a convenience decorator for marking controller methods as HTTP POST endpoints with full FastAPI configuration support.
post(path, response_model=None, status_code=None, tags=None, dependencies=None, summary=None, description=None, response_description='Successful Response', responses=None, deprecated=None, operation_id=None, response_model_include=None, response_model_exclude=None, response_model_by_alias=True, response_model_exclude_unset=False, response_model_exclude_defaults=False, response_model_exclude_none=False, include_in_schema=True, response_class=JSONResponse, name=None, route_class_override=None, callbacks=None, openapi_extra=None)
¶
Decorator to mark a controller method as an HTTP POST endpoint.
Convenience wrapper around @route that automatically sets the HTTP method to POST. Supports all FastAPI route configuration options.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
str
|
The URL path for this route. |
required |
response_model
|
type[Any] | None
|
Pydantic model for response serialization. |
None
|
status_code
|
int | None
|
HTTP status code for successful responses. |
None
|
tags
|
list[str] | None
|
OpenAPI tags for grouping endpoints. |
None
|
dependencies
|
Sequence[Depends] | None
|
FastAPI dependencies to inject. |
None
|
summary
|
str | None
|
Short summary for OpenAPI documentation. |
None
|
description
|
str | None
|
Detailed description for OpenAPI documentation. |
None
|
response_description
|
str
|
Description of successful response. |
'Successful Response'
|
responses
|
dict[int | str, dict[str, Any]] | None
|
Additional response schemas for OpenAPI. |
None
|
deprecated
|
bool | None
|
Whether this endpoint is deprecated. |
None
|
operation_id
|
str | None
|
Custom OpenAPI operation ID. |
None
|
response_model_include
|
SetIntStr | DictIntStrAny | None
|
Fields to include in response model. |
None
|
response_model_exclude
|
SetIntStr | DictIntStrAny | None
|
Fields to exclude from response model. |
None
|
response_model_by_alias
|
bool
|
Use field aliases in response. |
True
|
response_model_exclude_unset
|
bool
|
Exclude unset fields from response. |
False
|
response_model_exclude_defaults
|
bool
|
Exclude fields with default values. |
False
|
response_model_exclude_none
|
bool
|
Exclude None values from response. |
False
|
include_in_schema
|
bool
|
Include in OpenAPI schema. |
True
|
response_class
|
type[Response]
|
FastAPI response class to use. |
JSONResponse
|
name
|
str | None
|
Display name for the route. |
None
|
route_class_override
|
type[APIRoute] | None
|
Custom APIRoute class. |
None
|
callbacks
|
list[Route] | None
|
OpenAPI callbacks configuration. |
None
|
openapi_extra
|
dict[str, Any] | None
|
Additional OpenAPI schema data. |
None
|
Returns:
| Type | Description |
|---|---|
Callable[[Callable[..., AnyT]], Callable[..., AnyT]]
|
A decorator function that marks the method as a POST endpoint. |
Source code in plugins/spakky-fastapi/src/spakky/plugins/fastapi/routes/post.py
options: show_root_heading: false
spakky.plugins.fastapi.routes.put
¶
PUT route decorator for FastAPI controllers.
Provides a convenience decorator for marking controller methods as HTTP PUT endpoints with full FastAPI configuration support.
put(path, response_model=None, status_code=None, tags=None, dependencies=None, summary=None, description=None, response_description='Successful Response', responses=None, deprecated=None, operation_id=None, response_model_include=None, response_model_exclude=None, response_model_by_alias=True, response_model_exclude_unset=False, response_model_exclude_defaults=False, response_model_exclude_none=False, include_in_schema=True, response_class=JSONResponse, name=None, route_class_override=None, callbacks=None, openapi_extra=None)
¶
Decorator to mark a controller method as an HTTP PUT endpoint.
Convenience wrapper around @route that automatically sets the HTTP method to PUT. Supports all FastAPI route configuration options.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
str
|
The URL path for this route. |
required |
response_model
|
type[Any] | None
|
Pydantic model for response serialization. |
None
|
status_code
|
int | None
|
HTTP status code for successful responses. |
None
|
tags
|
list[str] | None
|
OpenAPI tags for grouping endpoints. |
None
|
dependencies
|
Sequence[Depends] | None
|
FastAPI dependencies to inject. |
None
|
summary
|
str | None
|
Short summary for OpenAPI documentation. |
None
|
description
|
str | None
|
Detailed description for OpenAPI documentation. |
None
|
response_description
|
str
|
Description of successful response. |
'Successful Response'
|
responses
|
dict[int | str, dict[str, Any]] | None
|
Additional response schemas for OpenAPI. |
None
|
deprecated
|
bool | None
|
Whether this endpoint is deprecated. |
None
|
operation_id
|
str | None
|
Custom OpenAPI operation ID. |
None
|
response_model_include
|
SetIntStr | DictIntStrAny | None
|
Fields to include in response model. |
None
|
response_model_exclude
|
SetIntStr | DictIntStrAny | None
|
Fields to exclude from response model. |
None
|
response_model_by_alias
|
bool
|
Use field aliases in response. |
True
|
response_model_exclude_unset
|
bool
|
Exclude unset fields from response. |
False
|
response_model_exclude_defaults
|
bool
|
Exclude fields with default values. |
False
|
response_model_exclude_none
|
bool
|
Exclude None values from response. |
False
|
include_in_schema
|
bool
|
Include in OpenAPI schema. |
True
|
response_class
|
type[Response]
|
FastAPI response class to use. |
JSONResponse
|
name
|
str | None
|
Display name for the route. |
None
|
route_class_override
|
type[APIRoute] | None
|
Custom APIRoute class. |
None
|
callbacks
|
list[Route] | None
|
OpenAPI callbacks configuration. |
None
|
openapi_extra
|
dict[str, Any] | None
|
Additional OpenAPI schema data. |
None
|
Returns:
| Type | Description |
|---|---|
Callable[[Callable[..., AnyT]], Callable[..., AnyT]]
|
A decorator function that marks the method as a PUT endpoint. |
Source code in plugins/spakky-fastapi/src/spakky/plugins/fastapi/routes/put.py
options: show_root_heading: false
spakky.plugins.fastapi.routes.patch
¶
PATCH route decorator for FastAPI controllers.
Provides a convenience decorator for marking controller methods as HTTP PATCH endpoints with full FastAPI configuration support.
patch(path, response_model=None, status_code=None, tags=None, dependencies=None, summary=None, description=None, response_description='Successful Response', responses=None, deprecated=None, operation_id=None, response_model_include=None, response_model_exclude=None, response_model_by_alias=True, response_model_exclude_unset=False, response_model_exclude_defaults=False, response_model_exclude_none=False, include_in_schema=True, response_class=JSONResponse, name=None, route_class_override=None, callbacks=None, openapi_extra=None)
¶
Decorator to mark a controller method as an HTTP PATCH endpoint.
Convenience wrapper around @route that automatically sets the HTTP method to PATCH. Supports all FastAPI route configuration options.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
str
|
The URL path for this route. |
required |
response_model
|
type[Any] | None
|
Pydantic model for response serialization. |
None
|
status_code
|
int | None
|
HTTP status code for successful responses. |
None
|
tags
|
list[str] | None
|
OpenAPI tags for grouping endpoints. |
None
|
dependencies
|
Sequence[Depends] | None
|
FastAPI dependencies to inject. |
None
|
summary
|
str | None
|
Short summary for OpenAPI documentation. |
None
|
description
|
str | None
|
Detailed description for OpenAPI documentation. |
None
|
response_description
|
str
|
Description of successful response. |
'Successful Response'
|
responses
|
dict[int | str, dict[str, Any]] | None
|
Additional response schemas for OpenAPI. |
None
|
deprecated
|
bool | None
|
Whether this endpoint is deprecated. |
None
|
operation_id
|
str | None
|
Custom OpenAPI operation ID. |
None
|
response_model_include
|
SetIntStr | DictIntStrAny | None
|
Fields to include in response model. |
None
|
response_model_exclude
|
SetIntStr | DictIntStrAny | None
|
Fields to exclude from response model. |
None
|
response_model_by_alias
|
bool
|
Use field aliases in response. |
True
|
response_model_exclude_unset
|
bool
|
Exclude unset fields from response. |
False
|
response_model_exclude_defaults
|
bool
|
Exclude fields with default values. |
False
|
response_model_exclude_none
|
bool
|
Exclude None values from response. |
False
|
include_in_schema
|
bool
|
Include in OpenAPI schema. |
True
|
response_class
|
type[Response]
|
FastAPI response class to use. |
JSONResponse
|
name
|
str | None
|
Display name for the route. |
None
|
route_class_override
|
type[APIRoute] | None
|
Custom APIRoute class. |
None
|
callbacks
|
list[Route] | None
|
OpenAPI callbacks configuration. |
None
|
openapi_extra
|
dict[str, Any] | None
|
Additional OpenAPI schema data. |
None
|
Returns:
| Type | Description |
|---|---|
Callable[[Callable[..., AnyT]], Callable[..., AnyT]]
|
A decorator function that marks the method as a PATCH endpoint. |
Source code in plugins/spakky-fastapi/src/spakky/plugins/fastapi/routes/patch.py
options: show_root_heading: false
spakky.plugins.fastapi.routes.delete
¶
DELETE route decorator for FastAPI controllers.
Provides a convenience decorator for marking controller methods as HTTP DELETE endpoints with full FastAPI configuration support.
delete(path, response_model=None, status_code=None, tags=None, dependencies=None, summary=None, description=None, response_description='Successful Response', responses=None, deprecated=None, operation_id=None, response_model_include=None, response_model_exclude=None, response_model_by_alias=True, response_model_exclude_unset=False, response_model_exclude_defaults=False, response_model_exclude_none=False, include_in_schema=True, response_class=JSONResponse, name=None, route_class_override=None, callbacks=None, openapi_extra=None)
¶
Decorator to mark a controller method as an HTTP DELETE endpoint.
Convenience wrapper around @route that automatically sets the HTTP method to DELETE. Supports all FastAPI route configuration options.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
str
|
The URL path for this route. |
required |
response_model
|
type[Any] | None
|
Pydantic model for response serialization. |
None
|
status_code
|
int | None
|
HTTP status code for successful responses. |
None
|
tags
|
list[str] | None
|
OpenAPI tags for grouping endpoints. |
None
|
dependencies
|
Sequence[Depends] | None
|
FastAPI dependencies to inject. |
None
|
summary
|
str | None
|
Short summary for OpenAPI documentation. |
None
|
description
|
str | None
|
Detailed description for OpenAPI documentation. |
None
|
response_description
|
str
|
Description of successful response. |
'Successful Response'
|
responses
|
dict[int | str, dict[str, Any]] | None
|
Additional response schemas for OpenAPI. |
None
|
deprecated
|
bool | None
|
Whether this endpoint is deprecated. |
None
|
operation_id
|
str | None
|
Custom OpenAPI operation ID. |
None
|
response_model_include
|
SetIntStr | DictIntStrAny | None
|
Fields to include in response model. |
None
|
response_model_exclude
|
SetIntStr | DictIntStrAny | None
|
Fields to exclude from response model. |
None
|
response_model_by_alias
|
bool
|
Use field aliases in response. |
True
|
response_model_exclude_unset
|
bool
|
Exclude unset fields from response. |
False
|
response_model_exclude_defaults
|
bool
|
Exclude fields with default values. |
False
|
response_model_exclude_none
|
bool
|
Exclude None values from response. |
False
|
include_in_schema
|
bool
|
Include in OpenAPI schema. |
True
|
response_class
|
type[Response]
|
FastAPI response class to use. |
JSONResponse
|
name
|
str | None
|
Display name for the route. |
None
|
route_class_override
|
type[APIRoute] | None
|
Custom APIRoute class. |
None
|
callbacks
|
list[Route] | None
|
OpenAPI callbacks configuration. |
None
|
openapi_extra
|
dict[str, Any] | None
|
Additional OpenAPI schema data. |
None
|
Returns:
| Type | Description |
|---|---|
Callable[[Callable[..., AnyT]], Callable[..., AnyT]]
|
A decorator function that marks the method as a DELETE endpoint. |
Source code in plugins/spakky-fastapi/src/spakky/plugins/fastapi/routes/delete.py
options: show_root_heading: false
spakky.plugins.fastapi.routes.head
¶
HEAD route decorator for FastAPI controllers.
Provides a convenience decorator for marking controller methods as HTTP HEAD endpoints with full FastAPI configuration support.
head(path, response_model=None, status_code=None, tags=None, dependencies=None, summary=None, description=None, response_description='Successful Response', responses=None, deprecated=None, operation_id=None, response_model_include=None, response_model_exclude=None, response_model_by_alias=True, response_model_exclude_unset=False, response_model_exclude_defaults=False, response_model_exclude_none=False, include_in_schema=True, response_class=JSONResponse, name=None, route_class_override=None, callbacks=None, openapi_extra=None)
¶
Decorator to mark a controller method as an HTTP HEAD endpoint.
Convenience wrapper around @route that automatically sets the HTTP method to HEAD. Supports all FastAPI route configuration options.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
str
|
The URL path for this route. |
required |
response_model
|
type[Any] | None
|
Pydantic model for response serialization. |
None
|
status_code
|
int | None
|
HTTP status code for successful responses. |
None
|
tags
|
list[str] | None
|
OpenAPI tags for grouping endpoints. |
None
|
dependencies
|
Sequence[Depends] | None
|
FastAPI dependencies to inject. |
None
|
summary
|
str | None
|
Short summary for OpenAPI documentation. |
None
|
description
|
str | None
|
Detailed description for OpenAPI documentation. |
None
|
response_description
|
str
|
Description of successful response. |
'Successful Response'
|
responses
|
dict[int | str, dict[str, Any]] | None
|
Additional response schemas for OpenAPI. |
None
|
deprecated
|
bool | None
|
Whether this endpoint is deprecated. |
None
|
operation_id
|
str | None
|
Custom OpenAPI operation ID. |
None
|
response_model_include
|
SetIntStr | DictIntStrAny | None
|
Fields to include in response model. |
None
|
response_model_exclude
|
SetIntStr | DictIntStrAny | None
|
Fields to exclude from response model. |
None
|
response_model_by_alias
|
bool
|
Use field aliases in response. |
True
|
response_model_exclude_unset
|
bool
|
Exclude unset fields from response. |
False
|
response_model_exclude_defaults
|
bool
|
Exclude fields with default values. |
False
|
response_model_exclude_none
|
bool
|
Exclude None values from response. |
False
|
include_in_schema
|
bool
|
Include in OpenAPI schema. |
True
|
response_class
|
type[Response]
|
FastAPI response class to use. |
JSONResponse
|
name
|
str | None
|
Display name for the route. |
None
|
route_class_override
|
type[APIRoute] | None
|
Custom APIRoute class. |
None
|
callbacks
|
list[Route] | None
|
OpenAPI callbacks configuration. |
None
|
openapi_extra
|
dict[str, Any] | None
|
Additional OpenAPI schema data. |
None
|
Returns:
| Type | Description |
|---|---|
Callable[[Callable[..., AnyT]], Callable[..., AnyT]]
|
A decorator function that marks the method as a HEAD endpoint. |
Source code in plugins/spakky-fastapi/src/spakky/plugins/fastapi/routes/head.py
options: show_root_heading: false
spakky.plugins.fastapi.routes.options
¶
OPTIONS route decorator for FastAPI controllers.
Provides a convenience decorator for marking controller methods as HTTP OPTIONS endpoints with full FastAPI configuration support.
options(path, response_model=None, status_code=None, tags=None, dependencies=None, summary=None, description=None, response_description='Successful Response', responses=None, deprecated=None, operation_id=None, response_model_include=None, response_model_exclude=None, response_model_by_alias=True, response_model_exclude_unset=False, response_model_exclude_defaults=False, response_model_exclude_none=False, include_in_schema=True, response_class=JSONResponse, name=None, route_class_override=None, callbacks=None, openapi_extra=None)
¶
Decorator to mark a controller method as an HTTP OPTIONS endpoint.
Convenience wrapper around @route that automatically sets the HTTP method to OPTIONS. Supports all FastAPI route configuration options.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
str
|
The URL path for this route. |
required |
response_model
|
type[Any] | None
|
Pydantic model for response serialization. |
None
|
status_code
|
int | None
|
HTTP status code for successful responses. |
None
|
tags
|
list[str] | None
|
OpenAPI tags for grouping endpoints. |
None
|
dependencies
|
Sequence[Depends] | None
|
FastAPI dependencies to inject. |
None
|
summary
|
str | None
|
Short summary for OpenAPI documentation. |
None
|
description
|
str | None
|
Detailed description for OpenAPI documentation. |
None
|
response_description
|
str
|
Description of successful response. |
'Successful Response'
|
responses
|
dict[int | str, dict[str, Any]] | None
|
Additional response schemas for OpenAPI. |
None
|
deprecated
|
bool | None
|
Whether this endpoint is deprecated. |
None
|
operation_id
|
str | None
|
Custom OpenAPI operation ID. |
None
|
response_model_include
|
SetIntStr | DictIntStrAny | None
|
Fields to include in response model. |
None
|
response_model_exclude
|
SetIntStr | DictIntStrAny | None
|
Fields to exclude from response model. |
None
|
response_model_by_alias
|
bool
|
Use field aliases in response. |
True
|
response_model_exclude_unset
|
bool
|
Exclude unset fields from response. |
False
|
response_model_exclude_defaults
|
bool
|
Exclude fields with default values. |
False
|
response_model_exclude_none
|
bool
|
Exclude None values from response. |
False
|
include_in_schema
|
bool
|
Include in OpenAPI schema. |
True
|
response_class
|
type[Response]
|
FastAPI response class to use. |
JSONResponse
|
name
|
str | None
|
Display name for the route. |
None
|
route_class_override
|
type[APIRoute] | None
|
Custom APIRoute class. |
None
|
callbacks
|
list[Route] | None
|
OpenAPI callbacks configuration. |
None
|
openapi_extra
|
dict[str, Any] | None
|
Additional OpenAPI schema data. |
None
|
Returns:
| Type | Description |
|---|---|
Callable[[Callable[..., AnyT]], Callable[..., AnyT]]
|
A decorator function that marks the method as an OPTIONS endpoint. |
Source code in plugins/spakky-fastapi/src/spakky/plugins/fastapi/routes/options.py
options: show_root_heading: false
spakky.plugins.fastapi.routes.websocket
¶
WebSocket route decorator for FastAPI controllers.
Provides a decorator for marking controller methods as WebSocket endpoints with support for FastAPI WebSocket configuration.
WebSocketRoute(path, name=None, dependencies=None)
dataclass
¶
Bases: FunctionAnnotation
Function annotation for marking methods as WebSocket endpoints.
Stores WebSocket route configuration including path and dependencies.
Attributes:
| Name | Type | Description |
|---|---|---|
path |
str
|
The URL path for this WebSocket endpoint. |
name |
str | None
|
Display name for the WebSocket route. |
dependencies |
Sequence[Depends] | None
|
FastAPI dependencies to inject. |
websocket(path, name=None, dependencies=None)
¶
Decorator to mark a controller method as a WebSocket endpoint.
Attaches WebSocket route configuration to the method which will be registered by the RegisterRoutesPostProcessor during container initialization.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
str
|
The URL path for this WebSocket endpoint. |
required |
name
|
str | None
|
Display name for the WebSocket route. |
None
|
dependencies
|
Sequence[Depends] | None
|
FastAPI dependencies to inject. |
None
|
Returns:
| Type | Description |
|---|---|
Callable[[Callable[..., AnyT]], Callable[..., AnyT]]
|
A decorator function that attaches the WebSocket route configuration. |
Source code in plugins/spakky-fastapi/src/spakky/plugins/fastapi/routes/websocket.py
options: show_root_heading: false