fix: update api
opt: test