added experimental client api