complete the most of api up function