add support for req/response