behavior refactoring: api layer started.