initial commit of key services api
refactor to use proper naming