update api and refer