new api for language