add functions api