working with refactoring the entire Api
refactor