Govendas/diarization
0
1'''2Created on 8 de ago. de 20253@author: marcelo4'''5 6from fastapi import FastAPI7from fastapi.openapi.utils import get_openapi8 9# Função para criar schema OpenAPI customizado10def custom_openapi(app: FastAPI):11 if app.openapi_schema:12 return app.openapi_schema13 14 openapi_schema = get_openapi(15 title="API de diarização de voz",16 version="1.0.0",17 description="API com autenticação Bearer Token global para acessar os endpoints",18 routes=app.routes,19 )20 21 # Configurações de url22 openapi_schema["servers"] = [23 {"url": "https://govendas-diarization.hf.space", "description": "Servidor de Produção"},24 {"url": "http://localhost:7860", "description": "Servidor Local"}25 ]26 27 # Garante que "components" exista28 if "components" not in openapi_schema:29 openapi_schema["components"] = {}30 31 # Garante que "securitySchemes" exista32 if "securitySchemes" not in openapi_schema["components"]:33 openapi_schema["components"]["securitySchemes"] = {}34 35 # Define o esquema Bearer36 openapi_schema["components"]["securitySchemes"]["BearerAuth"] = {37 "type": "http",38 "scheme": "bearer",39 "bearerFormat": "JWT"40 }41 42 # Aplica BearerAuth globalmente43 openapi_schema["security"] = [{"BearerAuth": []}]44 45 app.openapi_schema = openapi_schema46 return app.openapi_schema