refactor: model for save in cache