links: Optional[Dict[str, Union[Link, Reference]]] = None
-class Responses(BaseModel):
- default: Response
-
-
class Operation(BaseModel):
tags: Optional[List[str]] = None
summary: Optional[str] = None
operationId: Optional[str] = None
parameters: Optional[List[Union[Parameter, Reference]]] = None
requestBody: Optional[Union[RequestBody, Reference]] = None
- responses: Union[Responses, Dict[str, Response]]
+ responses: Dict[str, Response]
# Workaround OpenAPI recursive reference
callbacks: Optional[Dict[str, Union[Dict[str, Any], Reference]]] = None
deprecated: Optional[bool] = None
"3XX": "Redirection",
"4XX": "Client Error",
"5XX": "Server Error",
- "default": "Default Response",
+ "DEFAULT": "Default Response",
}
response.setdefault(
"description", status_text or "Additional Response"
)
- operation.setdefault("responses", {})[
- str(additional_status_code).upper()
- ] = response
+ status_code_key = str(additional_status_code).upper()
+ if status_code_key == "DEFAULT":
+ status_code_key = "default"
+ operation.setdefault("responses", {})[status_code_key] = response
status_code = str(route.status_code)
response_schema = {"type": "string"}
if lenient_issubclass(route.response_class, JSONResponse):
responses={
"400": {"description": "Error with str"},
"5xx": {"description": "Error with range, lower"},
+ "default": {"description": "A default response"},
},
)
async def c():
"description": "Successful Response",
"content": {"application/json": {"schema": {}}},
},
+ "default": {"description": "A default response"},
},
"summary": "C",
"operationId": "c_c_get",