from loguru import logger from fastapi import APIRouter, HTTPException from chain_service.database.models.namespace import Namespace from chain_service.dependencies.namespace_repository import ( NamespaceRepositoryDependency, ) router = APIRouter(prefix="/namespace") @router.post("/") async def namespace_controller( namespace: Namespace, namespace_repository: NamespaceRepositoryDependency ): try: upserted_namespace = await namespace_repository.upsert(namespace) return upserted_namespace except Exception: logger.exception(f"Error during namespace upsert {namespace.model_dump_json()}") return HTTPException(status_code=500, detail="Error during namespace upsert")