work on the client api