Add new API.
Update basic logic.