native client & rest client