add programming api for translation