[Change] make api more consistent