develop the client interface api