MCPcopy
hub / github.com/fastapi/fastapi / get_openapi_security_definitions

Function get_openapi_security_definitions

fastapi/openapi/utils.py:81–104  ·  view source on GitHub ↗
(
    flat_dependant: Dependant,
)

Source from the content-addressed store, hash-verified

79
80
81def get_openapi_security_definitions(
82 flat_dependant: Dependant,
83) -> tuple[dict[str, Any], list[dict[str, Any]]]:
84 security_definitions = {}
85 # Use a dict to merge scopes for same security scheme
86 operation_security_dict: dict[str, list[str]] = {}
87 for security_dependency in flat_dependant._security_dependencies:
88 security_definition = jsonable_encoder(
89 security_dependency._security_scheme.model,
90 by_alias=True,
91 exclude_none=True,
92 )
93 security_name = security_dependency._security_scheme.scheme_name
94 security_definitions[security_name] = security_definition
95 # Merge scopes for the same security scheme
96 if security_name not in operation_security_dict:
97 operation_security_dict[security_name] = []
98 for scope in security_dependency.oauth_scopes or []:
99 if scope not in operation_security_dict[security_name]:
100 operation_security_dict[security_name].append(scope)
101 operation_security = [
102 {name: scopes} for name, scopes in operation_security_dict.items()
103 ]
104 return security_definitions, operation_security
105
106
107def _get_openapi_operation_parameters(

Callers 1

get_openapi_pathFunction · 0.85

Calls 1

jsonable_encoderFunction · 0.90

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…