update api & upgrade