added API function definitions