basic server and api request client