__init__() — fastapi Function Reference
Architecture documentation for the __init__() function in routing.py from the fastapi codebase.
Entity Profile
Dependency Diagram
graph TD d8b4fb83_3521_0b7e_fcfa_0c7f161ca116["__init__()"] aa28685f_bb97_e988_ff40_3e5385960f32["APIRoute"] d8b4fb83_3521_0b7e_fcfa_0c7f161ca116 -->|defined in| aa28685f_bb97_e988_ff40_3e5385960f32 2b3c8ec5_f007_7808_7e6a_0e94569b6a17["get_route_handler()"] d8b4fb83_3521_0b7e_fcfa_0c7f161ca116 -->|calls| 2b3c8ec5_f007_7808_7e6a_0e94569b6a17 28261a63_2ba9_f1ff_1d1b_475348a45a65["Default()"] d8b4fb83_3521_0b7e_fcfa_0c7f161ca116 -->|calls| 28261a63_2ba9_f1ff_1d1b_475348a45a65 7ee6f7cb_c895_d136_b942_3a323fcab521["get_typed_return_annotation()"] d8b4fb83_3521_0b7e_fcfa_0c7f161ca116 -->|calls| 7ee6f7cb_c895_d136_b942_3a323fcab521 dba5a7c0_1fab_8f88_2c80_2b79c3b3dc47["is_body_allowed_for_status_code()"] d8b4fb83_3521_0b7e_fcfa_0c7f161ca116 -->|calls| dba5a7c0_1fab_8f88_2c80_2b79c3b3dc47 8e7d845c_a4e7_ee84_5295_5f3b995b05b4["create_model_field()"] d8b4fb83_3521_0b7e_fcfa_0c7f161ca116 -->|calls| 8e7d845c_a4e7_ee84_5295_5f3b995b05b4 1b892f95_174f_a6fa_5ff9_9cd8b88e8ee0["get()"] d8b4fb83_3521_0b7e_fcfa_0c7f161ca116 -->|calls| 1b892f95_174f_a6fa_5ff9_9cd8b88e8ee0 097a7e41_8095_d61f_b849_128514c58040["get_dependant()"] d8b4fb83_3521_0b7e_fcfa_0c7f161ca116 -->|calls| 097a7e41_8095_d61f_b849_128514c58040 3a3fcbe8_4556_0002_0c59_0917c6099b2b["get_parameterless_sub_dependant()"] d8b4fb83_3521_0b7e_fcfa_0c7f161ca116 -->|calls| 3a3fcbe8_4556_0002_0c59_0917c6099b2b df2bd000_d29c_ac4b_5eca_426e3122a385["get_flat_dependant()"] d8b4fb83_3521_0b7e_fcfa_0c7f161ca116 -->|calls| df2bd000_d29c_ac4b_5eca_426e3122a385 18580490_8a5f_0766_c8e1_329e703c7527["_should_embed_body_fields()"] d8b4fb83_3521_0b7e_fcfa_0c7f161ca116 -->|calls| 18580490_8a5f_0766_c8e1_329e703c7527 442274ca_f275_350e_f39a_7f88cd50be4a["get_body_field()"] d8b4fb83_3521_0b7e_fcfa_0c7f161ca116 -->|calls| 442274ca_f275_350e_f39a_7f88cd50be4a a5e26c9e_a11d_22bd_62d4_6c455577d2d9["request_response()"] d8b4fb83_3521_0b7e_fcfa_0c7f161ca116 -->|calls| a5e26c9e_a11d_22bd_62d4_6c455577d2d9 style d8b4fb83_3521_0b7e_fcfa_0c7f161ca116 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
fastapi/routing.py lines 557–687
def __init__(
self,
path: str,
endpoint: Callable[..., Any],
*,
response_model: Any = Default(None),
status_code: Optional[int] = None,
tags: Optional[list[Union[str, Enum]]] = None,
dependencies: Optional[Sequence[params.Depends]] = None,
summary: Optional[str] = None,
description: Optional[str] = None,
response_description: str = "Successful Response",
responses: Optional[dict[Union[int, str], dict[str, Any]]] = None,
deprecated: Optional[bool] = None,
name: Optional[str] = None,
methods: Optional[Union[set[str], list[str]]] = None,
operation_id: Optional[str] = None,
response_model_include: Optional[IncEx] = None,
response_model_exclude: Optional[IncEx] = None,
response_model_by_alias: bool = True,
response_model_exclude_unset: bool = False,
response_model_exclude_defaults: bool = False,
response_model_exclude_none: bool = False,
include_in_schema: bool = True,
response_class: Union[type[Response], DefaultPlaceholder] = Default(
JSONResponse
),
dependency_overrides_provider: Optional[Any] = None,
callbacks: Optional[list[BaseRoute]] = None,
openapi_extra: Optional[dict[str, Any]] = None,
generate_unique_id_function: Union[
Callable[["APIRoute"], str], DefaultPlaceholder
] = Default(generate_unique_id),
) -> None:
self.path = path
self.endpoint = endpoint
if isinstance(response_model, DefaultPlaceholder):
return_annotation = get_typed_return_annotation(endpoint)
if lenient_issubclass(return_annotation, Response):
response_model = None
else:
response_model = return_annotation
self.response_model = response_model
self.summary = summary
self.response_description = response_description
self.deprecated = deprecated
self.operation_id = operation_id
self.response_model_include = response_model_include
self.response_model_exclude = response_model_exclude
self.response_model_by_alias = response_model_by_alias
self.response_model_exclude_unset = response_model_exclude_unset
self.response_model_exclude_defaults = response_model_exclude_defaults
self.response_model_exclude_none = response_model_exclude_none
self.include_in_schema = include_in_schema
self.response_class = response_class
self.dependency_overrides_provider = dependency_overrides_provider
self.callbacks = callbacks
self.openapi_extra = openapi_extra
self.generate_unique_id_function = generate_unique_id_function
self.tags = tags or []
self.responses = responses or {}
self.name = get_name(endpoint) if name is None else name
self.path_regex, self.path_format, self.param_convertors = compile_path(path)
if methods is None:
methods = ["GET"]
self.methods: set[str] = {method.upper() for method in methods}
if isinstance(generate_unique_id_function, DefaultPlaceholder):
current_generate_unique_id: Callable[[APIRoute], str] = (
generate_unique_id_function.value
)
else:
current_generate_unique_id = generate_unique_id_function
self.unique_id = self.operation_id or current_generate_unique_id(self)
# normalize enums e.g. http.HTTPStatus
if isinstance(status_code, IntEnum):
status_code = int(status_code)
self.status_code = status_code
if self.response_model:
assert is_body_allowed_for_status_code(status_code), (
f"Status code {status_code} must not have a response body"
)
Domain
Subdomains
Defined In
Calls
Source
Frequently Asked Questions
What does __init__() do?
__init__() is a function in the fastapi codebase, defined in fastapi/routing.py.
Where is __init__() defined?
__init__() is defined in fastapi/routing.py at line 557.
What does __init__() call?
__init__() calls 12 function(s): Default, _should_embed_body_fields, create_model_field, get, get_body_field, get_dependant, get_flat_dependant, get_parameterless_sub_dependant, and 4 more.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free