single request handler