Home / Function/ get_openapi_security_definitions() — fastapi Function Reference

get_openapi_security_definitions() — fastapi Function Reference

Architecture documentation for the get_openapi_security_definitions() function in utils.py from the fastapi codebase.

Function python FastAPI Routing calls 1 called by 1

Entity Profile

Dependency Diagram

graph TD
  6c126127_cb4d_c433_3a3a_b84c50ec62e9["get_openapi_security_definitions()"]
  0dcb823f_ea0d_bd04_752b_a3a3f875bba1["utils.py"]
  6c126127_cb4d_c433_3a3a_b84c50ec62e9 -->|defined in| 0dcb823f_ea0d_bd04_752b_a3a3f875bba1
  200f313e_38b9_296f_f9aa_afdeacb6b8ad["get_openapi_path()"]
  200f313e_38b9_296f_f9aa_afdeacb6b8ad -->|calls| 6c126127_cb4d_c433_3a3a_b84c50ec62e9
  1ac1bc37_1a47_e7e2_9156_ab0473094700["jsonable_encoder()"]
  6c126127_cb4d_c433_3a3a_b84c50ec62e9 -->|calls| 1ac1bc37_1a47_e7e2_9156_ab0473094700
  style 6c126127_cb4d_c433_3a3a_b84c50ec62e9 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

fastapi/openapi/utils.py lines 82–105

def get_openapi_security_definitions(
    flat_dependant: Dependant,
) -> tuple[dict[str, Any], list[dict[str, Any]]]:
    security_definitions = {}
    # Use a dict to merge scopes for same security scheme
    operation_security_dict: dict[str, list[str]] = {}
    for security_dependency in flat_dependant._security_dependencies:
        security_definition = jsonable_encoder(
            security_dependency._security_scheme.model,
            by_alias=True,
            exclude_none=True,
        )
        security_name = security_dependency._security_scheme.scheme_name
        security_definitions[security_name] = security_definition
        # Merge scopes for the same security scheme
        if security_name not in operation_security_dict:
            operation_security_dict[security_name] = []
        for scope in security_dependency.oauth_scopes or []:
            if scope not in operation_security_dict[security_name]:
                operation_security_dict[security_name].append(scope)
    operation_security = [
        {name: scopes} for name, scopes in operation_security_dict.items()
    ]
    return security_definitions, operation_security

Domain

Subdomains

Called By

Frequently Asked Questions

What does get_openapi_security_definitions() do?
get_openapi_security_definitions() is a function in the fastapi codebase, defined in fastapi/openapi/utils.py.
Where is get_openapi_security_definitions() defined?
get_openapi_security_definitions() is defined in fastapi/openapi/utils.py at line 82.
What does get_openapi_security_definitions() call?
get_openapi_security_definitions() calls 1 function(s): jsonable_encoder.
What calls get_openapi_security_definitions()?
get_openapi_security_definitions() is called by 1 function(s): get_openapi_path.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free