switch away from pipe since we can't check statusCode and pipe conditionally