seperate the service of api and admin layer