Skip to content

AddServiceRoute

fastapi_gateway_auto_generate.management.routes.AddServiceRoute

AddServiceRoute(config)

Router for adding a service

Parameters:

Name Type Description Default
config Config

The Config object with its configuration.

required

Returns:

Name Type Description
result bool

True if the addition was successful, otherwise False.

Source code in fastapi_gateway_auto_generate/management/routes/AddServiceRoute.py
def __init__(self, config: Config) -> None:
    self.__config: Config = config
    self.route: APIRouter = APIRouter()
    self.__dependencies = []

    if not self.__config.jwt is None:
        self.__dependencies.append(Depends(self.__config.jwt(self.__config.service_name, "/service", "post")))

    @self.route.post("/service", tags=["Service management"],
                     dependencies=self.__dependencies)
    async def add_service(add_service: AddService) -> dict[str, dict[str, str | int]]:
        result, err = add_service_database(db_url=self.__config.db_url).add_service(
            add_service_model=add_service)

        if err:
            raise HTTPException(status_code=409, detail=err)

        return success_code(msg="The service has been added")