complete api server design