modify api interface