fix: json parse, sample client