FastAPI에서는 매우 손쉽게 Swagger UI를 생성할 수 있습니다. 그런데 자동으로 생성되는 Swagger UI에 노출시키고 싶지 않은 엔드포인트가 있을 수 있습니다.
이런 경우에는 include_in_schema라는 매개변수를 쓰면 됩니다.
from fastapi import FastAPI
app = FastAPI()
@app.get("/visible-endpoint", tags=["visible"])
def visible_endpoint():
return {"message": "This endpoint is visible in the documentation."}
@app.get("/hidden-endpoint", tags=["hidden"], include_in_schema=False)
def hidden_endpoint():
return {"message": "This endpoint is hidden in the documentation."}
위와 같이 데코레이터에서 include_in_schema=False로 매개변수 값을 설정해 주면 그 엔드포인트는 Swagger 문서에서 제외됩니다.