modify the data type
update doc, add new api