add new function apis